不扩展PreferenceActivity加载preferences.xml

4

我是否可以在不扩展PreferenceActivity的情况下加载preferences.xml?我需要这样做的原因如下:

  1. 我想要自定义标题栏
  2. 我希望所有的活动都扩展我的AbstractActivity

你是如何实现的?你使用了PreferenceManager吗? - Namratha
我使用了PreferenceActivity。可以设置自定义标题栏(尝试在这里搜索,有一个描述如何实现的答案)。 - fhucho
关于你的第二个陈述:“我希望所有我的活动都扩展我的AbstractActivity”,你有实现吗? - HitOdessit
2个回答

2
我认为这并不容易,现在也无法测试,但从技术上讲应该是可行的...
你应该使用PreferenceManager,它有一个createPreferenceScreen(Context ctx)方法,可以返回一个PreferenceScreen,根据文档:

表示作为首选项层次结构根的顶级首选项。PreferenceActivity指向此类的实例以显示首选项。

而且,这个类又有一个getView(View convertView, ViewGroup parent)方法,返回一个View,根据文档所述:

获取将在PreferenceActivity中显示的视图。

因此,我想在您的活动中设置此返回的视图应该显示与PreferenceActivity相同的内容...

2
您可以在自己的活动类中重新实现PreferenceActivity。这是PreferenceActivity类的源代码

它相当小,我认为理解起来不会很困难。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接