Eliran
Eliran

Reputation: 59

Fire onItemClick event without the user do something

So I have an AutoCompleteTextview which works fine, but I would like to know how to enforce a specific option. The meaning is to use something like setText(), but setText is not good for me, because it doesn't activate the onItemClick event, and this is what I want to activate.

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

Thanks for any help.

Upvotes: 0

Views: 438

Answers (1)

Kasra
Kasra

Reputation: 3145

You need to declare the listener as a member variable and force call it from outside, like this:

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...
   }
};

and when you need to force call it, use:

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

for example:

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

Upvotes: 3

Related Questions