在用户不执行任何操作的情况下激发onItemClick事件



所以我有一个AutoCompleteTextview,它工作得很好,但我想知道如何强制执行特定的选项。意思是使用类似setText()的东西,但setText对我不好,因为它不会激活onItemClick事件,而这正是我想要激活的。

myAutoCompleteTextView.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parentView, View selectedItemView,                                                   ()int position, long id) {
               // do something...
   }
});

谢谢你的帮助。

您需要将侦听器声明为成员变量,并强制从外部调用它,如下所示:

void onCreate(Bundle savedInstanceState){
     // setContentView and other stuff
     myAutoCompleteTextView.setOnItemClickListener(mOnItemListener);
}

AdapterView.OnItemClickListener mOnItemListener = new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parentView, View selectedItemView,int position, long id) {
               // do something...
   }
};

当你需要强制调用它时,使用:

mOnItemListener.onItemClick(/*put your forced parameters here*/);

例如:

mOnItemListener.onItemClick(null, null, 10, 20);

相关内容

最新更新