Android - how to invoke onNavigationItemSelected when spinner item is re-selected -
i using spinner in action bar navigation. problem is, onnavigationitemselected not called when selected item same selected one. have looked @ similar questions here , here , here none of them provide working solution, specific required drop down navigation within action bar.
i using following code:
public class testspinner extends activity implements actionbar.onnavigationlistener { private integer mposition; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); final actionbar actionbar = getactionbar(); final string[] eventtypes = getresources().getstringarray( r.array.spinner_items); mposition = -1; arrayadapter<string> adapter = new arrayadapter<string>( actionbar.getthemedcontext(), android.r.layout.simple_spinner_item, android.r.id.text1, eventtypes); adapter.setdropdownviewresource(android.r.layout.simple_spinner_dropdown_item); actionbar.setlistnavigationcallbacks(adapter, this); actionbar.setdisplayhomeasupenabled(true); actionbar.setnavigationmode(actionbar.navigation_mode_list);
....
@override public boolean onnavigationitemselected(int position, long id) { if (mposition > -1) { mposition = position; // execute required code on spinner item selection return true; } else { mposition = 0; return false; } }
note, use mposition flag prevent onnavigationitemselected execute code when action bar first created. wonder if there more elegant, recommended way of doing ?
however, key question is, how generate callback onnavigationitemselected when same spinner item in action bar re-selected ?
Comments
Post a Comment