spinner中的onNothingSelected方法到底什么时候调用?
【摘要】 这个东东大家在开发中可能不太能用到,所以总是容易被忽略,由于工作原因,我最近琢磨了一下onNothingSelected方法的调用时机问题,其实很简单,只要我们稍微看一下源码就明白了:
/** * Callback method to be invoked when the selection disappears from this * view. The select...
这个东东大家在开发中可能不太能用到,所以总是容易被忽略,由于工作原因,我最近琢磨了一下onNothingSelected方法的调用时机问题,其实很简单,只要我们稍微看一下源码就明白了:
-
/**
-
* Callback method to be invoked when the selection disappears from this
-
* view. The selection can disappear for instance when touch is activated
-
* or when the adapter becomes empty.
-
*
-
* @param parent The AdapterView that now contains no selected item.
-
*/
-
void onNothingSelected(AdapterView<?> parent);
-
@Override
-
protected void onCreate(Bundle savedInstanceState) {
-
super.onCreate(savedInstanceState);
-
setContentView(R.layout.activity_main);
-
initData();
-
provinces = (Spinner) this.findViewById(R.id.provinces);
-
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item,
-
data);
-
provinces.setAdapter(adapter);
-
provinces.setOnItemSelectedListener(new OnItemSelectedListener() {
-
-
@Override
-
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-
Log.d("qianfeng", "您选择了" + data.get(position));
-
}
-
-
@Override
-
public void onNothingSelected(AdapterView<?> parent) {
-
Log.d("qianfeng", "NothingSelected");
-
}
-
});
-
}
-
-
/**
-
* 点击button时,将集合中的数据全部移除,同时调用adapter的notifyDataSetChanged方法
-
* @param view
-
*/
-
public void btnClick(View view){
-
data.removeAll(data);
-
adapter.notifyDataSetChanged();
-
}
-
-
private void initData() {
-
data = new ArrayList<String>();
-
data.add("山东");
-
data.add("广西");
-
data.add("陕西");
-
data.add("广东");
-
}
文章来源: wangsong.blog.csdn.net,作者:_江南一点雨,版权归原作者所有,如需转载,请联系作者。
原文链接:wangsong.blog.csdn.net/article/details/50598673
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)