2014-09-26 2 views
1

Моя основная деятельность состоит из fragment .Я настройки экшен бар на onResume() метод деятельности, какИзменить ActionBar Название

@Override 
    protected void onResume() { 
     super.onResume(); 
     getActionBar().setTitle("My Account"); 
    } 

, который показывает название действия бар как "My Account" .И когда я называю фрагмент я установить заголовок на onResume() метод фрагмента, как

@Override 
    public void onResume() { 
     super.onResume(); 
     getActivity().getActionBar().setTitle("Connected Accounts"); 
    } 

, который отображает название как 'Connected Accounts' .Однако, когда я вернуться к своей деятельности она по-прежнему отображает название как 'Connected Accounts', тогда как он должен отображаться как 'My Account'. Пожалуйста, помогите, я знаю, что в этом необычном случае нет чего-то недостающего. Спасибо

+1

Нет, это не так. Вы делаете неправильное предположение, что действие приостанавливается, пока вы показываете фрагмент – Blackbelt

+0

, итак, где я должен его назвать? – goonerDroid

+1

Вы можете снова войти в 'onPause' внутри своего фрагмента в« Моя учетная запись ». Это должно сделать трюк – zozelfelfo

ответ

5

Просто переопределите onDetach() в своем классе фрагментов. Добавьте этот код в свой фрагмент.

@Override 
public void onDetach() { 
    // TODO Auto-generated method stub 
    super.onDetach(); 
    getActionBar().setTitle("My Account"); 
} 
+0

спасибо! Предпочитал бы этот ответ, а не вызывал внутри onPause() внутри фрагмента. – goonerDroid

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