2017-01-11 9 views
0

Я отобразил фрагмент A, который реализует ViewPager с несколькими фрагментами (вложенными фрагментами).Работа с параметрамиMenu во вложенном фрагменте не обновляется

В моих вложенных фрагментах я раздуваю меню следующим способом.

@Override 
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { 
    inflater.inflate(R.menu.my_menu, menu); 
    super.onCreateOptionsMenu(menu, inflater); 
} 

Этот вопрос уже задан here. И я попробовал все ответы, которые он не работал.

Мой вопрос Все работает fine.but, когда я открыть еще один фрагмент (это не какой-либо меню опций) и вернуться к предыдущему фрагменту вид пейджера при нажатии пункта меню onOptionsItemSelected не стреляя. Когда я просматриваю фрагмент в viewpager и возвращаюсь к предыдущему, когда я нажимаю пункт меню его стрельбы.

ответ

1

Его потому, что viewpager поддерживает 3 фрагмента живых за раз. поэтому, когда вы вернетесь, он устанавливает статус видимости меню true для последнего фрагмента. поэтому ваш пункт меню не стреляет.

Используйте следующую во фрагменте, где вы сохраняя ViewPager в вашем случае фрагмент А.

private boolean isInitial=true; 

@Override 
    public void onResume() { 
     super.onResume(); 

     if (!isInitial) { 
      int pos = viewpager.getCurrentItem(); 
      if (pageAdapter.getItem(pos).getUserVisibleHint() && pageAdapter.getItem(pos).isVisible()) { 
       pageAdapter.getItem(pos).setMenuVisibility(true); 
      } 
     } else { 
      isInitial = false; 
     } 
    } 

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

  • Нет связанных вопросов^_^