如何在Android Spinner上设置验证(下拉)

时间:2018-06-19 12:25:05

标签: android

如果用户在提交表单时未从下拉菜单中选择任何内容,则如何在android Spinner上设置验证,然后应显示验证消息。怎么可能。搜索很多东西在谷歌,但无法做到这一点。请任何人帮助我。

3 个答案:

答案 0 :(得分:2)

int value = 0;
String Text = String.valueOf(mySpinner.getSelectedItem());

然后分配值,例如

if(Text == "BUS"){
 value = 20;
}
else if(Text == "TRAIN"){
 value = 10;
}
else{
 value = 0;
}

然后检查值是否为0。如果值为0,则显示验证消息

答案 1 :(得分:0)

全局定义变量以存储微调框的选定项目,并根据微调框发出的值将其设置为空或为空

将值存储到所选项目的那个变量中。

在检查时,检查您定义的变量不为空或为null。 如果是这样,则显示消息吐司。

答案 2 :(得分:0)

如何执行此操作:

  • 检查微调框是否为空。获取默认的选定视图。请求 聚焦于相同的视图。设置一些要显示的错误消息。

您还可以单击微调器,以显示微调器列表。 (附加选项)。

Spinner mySpinner = (Spinner)findViewById(R.id.spinner_configurable_item);
                        int selectedItemOfMySpinner = mySpinner.getSelectedItemPosition();
                        String actualPositionOfMySpinner = (String) mySpinner.getItemAtPosition(selectedItemOfMySpinner);

                        if (actualPositionOfMySpinner.isEmpty()) {
                            setSpinnerError(mySpinner,getString("field can't be empty"));
                        }

private void setSpinnerError(Spinner spinner, String error){
    View selectedView = spinner.getSelectedView();
    if (selectedView != null && selectedView instanceof TextView) {
        spinner.requestFocus();
        TextView selectedTextView = (TextView) selectedView;
        selectedTextView.setError("error"); // any name of the error will do
        selectedTextView.setTextColor(Color.RED); //text color in which you want your error message to be displayed
        selectedTextView.setText(error); // actual error message 
        spinner.performClick(); // to open the spinner list if error is found.

    }
}