本文介绍了如何显示类似于TextView.setError()的微调小部件的验证错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何显示类似于TextView.setError()的微调小部件的验证错误我不想为每个微调框验证错误打开一个新对话框,android.widget.Spinner类没有setError方法

How to display validation error for a spinner widget similar to TextView.setError()I don't want to open a new dialog box for every spinner validation error,android.widget.Spinner class doesn’t have setError method

推荐答案

如果您的微调器设置了默认项目视图,则 getSelectedView() 方法将返回 TextView .然后,您可以调用 setError(CharSequence) 这是我所做的:

If your spinner is set-up with default item views the getSelectedView() method on Spinner class will return a TextView. And on that you can call setError(CharSequence) Here is what I did:

View selectedView = spinner.getSelectedView();
if (selectedView != null && selectedView instanceof TextView) {
    TextView selectedTextView = (TextView) selectedView;
    if (!valid) {
        String errorString = selectedTextView.getResources().getString(mErrorStringResource);
        selectedTextView.setError(errorString);
    }
    else {
        selectedTextView.setError(null);
    }
}

结果在Android 4.4上如下所示:

Result looks like this on Android 4.4:

这篇关于如何显示类似于TextView.setError()的微调小部件的验证错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-12 21:20