我正在尝试使用PreferenceFragment而不是PreferenceActivity,因为我不喜欢在我的代码中使用“deprecated”这个词。
我已经构建了我的首选项布局和PreferenceFragment类都可以。现在,我只需在用户点击菜单中的“设置”时启动它。显然,我希望他们被带到一个新页面。使用PreferenceActivity,这很简单 - 只需使用Intent调用startActivity。
使用PreferenceFragment,我必须创建一个新的Activity,然后在其中设置首选项。如果我只是在当前活动中替换(android.R.id.content,fragment),则片段将覆盖或重叠与setContentView()中设置的当前布局。这似乎是一个很多工作只是为了显示一个简单的设置片段。如果我要创建一个新的活动来保存片段,我可能首先使用PreferenceActivity。
我在这里错过了一些东西吗?我想要做的就是在一个新的屏幕上显示我漂亮的PreferenceFragment。没有简单的方法可以做到这一点?
答案 0 :(得分:0)
你可以使整个主要布局成为一个framelayout而不是硬编码片段。
这样可以毫无问题地进出片段。
我一直认为在XML中对片段进行硬编码违背了片段的性质和目的。