Я пытаюсь отобразить панель действий на экране настроек. Для этого я добавил следующий код в свой параметр SettingActivity
public class PreferencesActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.preferences_activity);
getFragmentManager().beginTransaction()
.replace(R.id.container, new PreferencesFragment()).commit();
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_HOME_AS_UP);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
}
то остальная часть моего кода в PreferencesFragment. Это работает отлично, но как только я нажимаю на предпочтение PreferenceScreen, панель действий скрыта. Если я вернусь к главному экрану предпочтений, я снова его увижу. Любая идея о том, как отображать панель действий (и обновляться с помощью метки PreferenceScreen)?
Изменить: глядя на код PreferenceScreen, он выглядит так, как открывается полный экран. Диалог открывается при нажатии на PreferenceScreen. Поскольку у моего предпочтения есть заголовок, Диалог должен также отображать заголовок... но он не
// Set the title bar if title is available, else no title bar final CharSequence title = getTitle(); Dialog dialog = mDialog = new Dialog(context, context.getThemeResId()); if (TextUtils.isEmpty(title)) { dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE); } else { dialog.setTitle(title); }