2013-03-22 2 views
1

У меня есть список в моей панели действий sherlock. Я хочу получить, когда пользователь нажмет на этот список. Я не хочу знать, когда пользователь нажимает на элемент, я уже знаю, что (onNavigationItemSelected).перейти на ListNavigation нажмите в панели действий

в моем OnCreate():

// Set action bar 
final ActionBar actionBar = getSherlockActivity().getSupportActionBar(); 
if (actionBar.getNavigationMode() != ActionBar.NAVIGATION_MODE_LIST) { 
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); 
} 
actionBar.setDisplayShowTitleEnabled(false); 
mSelectionAdapter = new SelectionAdapter(getSherlockActivity().getSupportActionBar().getThemedContext(), R.layout.sherlock_spinner_dropdown_item, kinds); 
actionBar.setListNavigationCallbacks(mSelectionAdapter, this); 

Я хочу, чтобы обнаружить программно когда пользователь нажимает на список навигации в моей панели действий.

ответ

1

Если вы просто хотите, чтобы получать уведомления, когда пункт ActionBar таких как меню списка нажата, то вы должны переопределить onMenuItemSelected следующим образом:

@Override 
public boolean onMenuItemSelected(int featureId, MenuItem item) { 
int itemId = item.getItemId(); 
//using logcat you may see what the list item id is? 
Log.i(TAG, "clicked actionbar itemid is: " + itemId); 

//here you can setup a listener for every actionbar item selected 
    switch (itemId) { 
//android.R.id.list might not be the one you are searching pls check it out and compare it to logcat and put the appropriate itemId here 
    case android.R.id.list: 
//do whatever you want to do when list item is clicked 
     break; 
    } 

    return true; 
} 
+0

я tryiedit, не работает :( –

+0

обновил свой ответ. PLS проверить его. –

Смежные вопросы