1

我有以下代码。当用户从菜单中选择“设置”时,它应该创建一个偏好视图。它会这样做,但是当用户选择“设置”时,设置菜单会出现在我的默认视图顶部,就像它具有透明背景一样。创建设置菜单时,我已经包含了它的外观。

应用图片 如您所见,除了屏幕中间的“大文本”之外,我的默认视图是空白的,但首选项菜单仅显示在其顶部。

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle item selection
    switch (item.getItemId()) {
        case R.id.menu_settings:
             getFragmentManager().beginTransaction()
             .replace(android.R.id.content, new SettingsMenu())
             .addToBackStack(null)
             .commit();
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}

我该如何解决?

4

1 回答 1

3

通常,您应该开始一项新活动,而不是PreferenceFragment直接将我认为的活动添加到您的活动中。

或者,您应该将现有的 UI(“大文本”)放在一个通过您的replace()调用替换的片段中。就目前而言,您现有的 UI 似乎不在一个片段中,或者至少不在一个被标识为android.R.id.content.

于 2012-12-29T23:32:25.977 回答