2013-07-15 4 views
0

Я использую Шерлок LIB и у меня есть SherlockBar + ViewPagerIndicator с 2 SherlockListFragment, мне нужно использовать onCreateContextMenu в каждом списке, я написал oveeride метода в главном extends SherlockFragmentActivityonCreateContextMenu в двух списках

@Override 
public void onCreateContextMenu(ContextMenu contextMenu, View view, ContextMenu.ContextMenuInfo contextMenuInfo) { 
    if(indicator.getCurrentItem()==PAGE_M) { 
     getMenuInflater().inflate(R.menu.mcontextmenu, contextMenu); 
     messageViewHolder=(MessageViewHolder)view.getTag(); 
    } 
    else { 
     getMenuInflater().inflate(R.menu.ccontextmenu, contextMenu); 
     messageViewHolder=null; 
    } 
    super.onCreateContextMenu(contextMenu, view, contextMenuInfo); 
} 

, но контекстное меню работает только в первом списке. Где моя ошибка?

Спасибо!

ответ

0

Вы должны обязательно вызвать registerForContextMenu внутри onActivityCreated для каждого фрагмента.

public void onActivityCreated(Bundle savedState) { 
registerForContextMenu(getListView()); 
} 
+0

проблема заключается в том, что контекстное меню зарегистрировано только для первого фрагмента, я пытался использовать onCreateContextMenu в каждом фрагменте. но его не помогли – Gorets

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