【发布时间】:2015-03-05 02:40:23
【问题描述】:
我有一个PreferenceFragment,它可以显示在Activity 中。但是,当我将Activity 切换为ActionBarActivity 时,片段未显示。 (我只能在下面看到一个操作栏和一个空白屏幕。)我使用的主题是Theme.AppCompat.Light,因此我需要使用ActionBarActivity才能显示ActionBar。
这是我的原始代码:
public class SettingsActivity extends Activity { // later changed to extend ActionBarActivity
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Display the fragment as the main content
getFragmentManager().beginTransaction().
replace(android.R.id.content, new SettingsFragment()).commit();
}
}
【问题讨论】:
-
向后兼容性不是我主要关心的问题(我的
minSdkVersion是 16)。我使用ActionBarActivity,因为这是我可以使用更新的材料主题显示ActionBar的方式。你能建议我能做什么吗?为什么PreferenceFragment和托管ActionBarActivity在不同的库中会导致问题? -
在 Android 5.0 Lollipop 中,您应该使用小部件 'ToolBar' 来替换 ActionBar。并使用 'getSupportFragmentManager()' 替换 'getFragmentManager()'。
标签: android android-fragments preferenceactivity material-design