如何解决空的默认自定义微调器
我在我的微调器中添加了所有必要的项目,但我想将第一个作为空的默认值,比如在项目的第一个位置“选择类别”。如何将第一个设置为空默认值?
这是我的代码
private Spinner customSpinner;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add);
//CUSTOM SPINNER----------------------------------------------------------------------------
customSpinner=findViewById(R.id.customSpinner);
// create spinneritemlist for spinner
ArrayList<CustomItems> customList = new ArrayList<>();
customList.add(new CustomItems("Cat",R.drawable.ic_)); //30dp vector asset
customList.add(new CustomItems("Dog",R.drawable.ic_));
customList.add(new CustomItems("Elephant",R.drawable.ic_));
customList.add(new CustomItems("item 2",R.drawable.ic_));
customList.add(new CustomItems("item 3",R.drawable.ic_));
customList.add(new CustomItems("4",R.drawable.ic_));
customList.add(new CustomItems("5",R.drawable.ic_));
customList.add(new CustomItems("c",R.drawable.ic_));
customList.add(new CustomItems("shark",R.drawable.ic_));
customList.add(new CustomItems("Pet",R.drawable.ic_));
customList.add(new CustomItems("Toys",R.drawable.ic_));
customList.add(new CustomItems("Others",R.drawable.ic_));
// create Adapter for spinner
CustomAdapter customAdapter = new CustomAdapter(this,customList);
if (customSpinner != null) {
customSpinner.setAdapter(customAdapter);
customSpinner.setonItemSelectedListener(this);
}
//CUSTOM SPINNER----------------------------------------------------------------------------
}
//CUSTOM SPINNER--------------------------------------------------------------------------------
@Override
public void onItemSelected(AdapterView<?> adapterView,View view,int i,long l) {
CustomItems items = (CustomItems) adapterView.getSelectedItem();
Toast.makeText(this,items.getSpinnerText(),Toast.LENGTH_SHORT).show();
}
@Override
public void onnothingSelected(AdapterView<?> parent) {
}
//CUSTOM SPINNER--------------------------------------------------------------------------------
解决方法
您可以尝试使用此方法为微调器实现占位符
ArrayList<CustomItems> customList = new ArrayList<>();
customList.add(new CustomItems("Cat",R.drawable.ic_)); //30dp vector asset
customList.add(new CustomItems("Dog",R.drawable.ic_));
customList.add(new CustomItems("Elephant",R.drawable.ic_));
customList.add(new CustomItems("Select Animal",R.drawable.ic_)); <- This
在您的 CustomAdapter 覆盖 getCount
方法
@Override
public int getCount() {
return customList.length - 1;
}
并在设置适配器后在您的 onCreate 函数中
customSpinner.setSelection(customList.length - 1);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。