今天用到Spinner,两次点击同一个item的时候,第二次会不响应OnItemSelect事件。
终于自己摸索出解决方法了:
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,int arg2, long arg3)
{
//do what you want
......
//after you do
/*here items is the adapter's items*/
int size = items.size();
Spinner spinner = (Spinner)arg1.getParent();
spinner.setSelection(size);
}
也就是说:只要在选择处理完成之后,主动设置选中的item的index >= adapter的个数就行了。
下次点击相同的item的时候,就会响应了。
当然,这里有个问题:就是选择之后显示的文字不对。这里你需要保存一下你当前选择的文字的。
或者重写一个adapter,重写里面的getView方法。
如果你有疑问,欢迎留言探讨。