如何将微调器中的第一个值(默认值)设置为空

用户名

如何将微调器中的第一个值(默认值)设置为空。意味着,直到用户从列表中选择值,微调器将没有值。我在下面尝试

list.add(""); 

但是,它不起作用。下面是我的代码:

if(values.contains("options")){
       spinner.setOnItemSelectedListener(MyClass.this);
       List<String> list = new ArrayList<String>();
       list.add("");
       list.add("Test");
       list.add("Working");
       ArrayAdapter<String> adapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_spinner_item, list) {};

      adapter.setDropDownViewResource(R.layout.custom_spinner_list);
      spinner.setAdapter(adapter);     
   }
 }
用户名

我找到了路。这是我们的方法,让最后一行是

list.add("");

并添加以下代码:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_spinner_item, list) {

                        @Override
                        public View getView(int position, View convertView, ViewGroup parent) {

                                View v = super.getView(position, convertView, parent);
                                if (position == getCount()) {
                                    ((TextView)v.findViewById(android.R.id.text1)).setText("");
                                    ((TextView)v.findViewById(android.R.id.text1)).setHint(getItem(getCount())); //"Hint to be displayed"
                                }

                                return v;
                            }       

                            @Override
                            public int getCount() {
                                return super.getCount()-1;            // you don't display last item. It is used as hint.
                            }

                    };


                    adapter.setDropDownViewResource(R.layout.custom_spinner_list);
                    spinner.setAdapter(adapter);
                    spinner.setSelection(adapter.getCount());        //set the hint the default selection so it appears on launch.
                    spinner.setOnItemSelectedListener(this);
                    notifyDataSetChanged();        

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

选择第一个时,第二个微调器的位置设置为默认值

将下拉列表中的第一个值设置为php中的默认值

将下拉列表中的第一个值设置为 VueJs 中的默认值

如何将选择下拉列表中的第一个值设置为默认反应

如何在python中仅调用类的第二个值,同时将第一个值保留为默认值?

React-如何以选择形式将数组的第一个值显示为默认值?

从第一个表值Access中设置表单的组合框默认值

将微调器数量设置为默认值

如何将多个微调器值重置为默认值

如何将默认文件设置为在Visual Studio代码中运行的第一个文件?

是否有C ++准则将第一个枚举设置为“安全”默认值?

如果 MongoDB 中压缩数组的第 n 个元素为空,如何将数组中的第 n 个值设置为 $zip 的默认值?

如何将第一个选项设置为空?

切片后将第一个选项 div 显示为默认值

如何将 DropdownButton 的第一项设置为第一个 API 的值,而其余项设置为 Flutter 中第二个 API 的值?

在组合框中的第一个值上设置为空

比较 JSON 并将数据为空的值设置到第一个对象中

从 T-SQL 中的 json 对象获取第一个值或默认值

将模型中字段的默认值设置为另一个模型实例

AngularJS选择未重置为第一个/默认值的项目

如何将目录中的第一个文件设置为 TCL 中的变量?

即使第一个参数不为null,ObjectUtils defaultIfNull也将返回默认值

将第一个值设置为Javascript数组中的键

如果第一个条件失败,如何为变量分配默认值?

如何为第一个输入提供默认值?

如何在我的选择字段中将表单中的第一个项目设为默认值

在 Python 中的第一个键上具有默认值的嵌套字典

将列中的所有值设置为等于Postgres中窗口上的第一个非空值

创建一个通用函数,比较第一个参数是否为空,如果返回第二个,则返回默认值,否则返回第一个