2011-10-06 39 views
2

我试图创建一个以PreferenceActivity开头的类的层次结构。Android偏好设置 - 更改它们出现的顺序

这个想法是基础类包含'关于我'按钮,然后下一个类实现游戏/应用程序/壁纸的通用首选项,然后下一个类添加每个实际的游戏/应用程序的具体细节。

这个想法很好用,但是因为我在每个级别都从XML'添加'首选项,所以他们首先出现在最通用的(最低级)首选项(例如我的'关于'按钮)。

理想情况下,我想让他们成为另一种方式 - 使特定的喜好出现在列表的顶部,通用的喜好出现在底部 - 有什么办法可以实现这一点(我已经阅读了文档在PreferenceFragments和新的PreferenceHeaders,甚至似乎没有提供任何东西?)

是否有任何编程方式来移动PreferenceCategorys或PreferenceScreens在整体顺序内?

本质上讲,当我使用

addPreferencesFromResource(R.xml.clock_settings);

我想有一个

addPreferencesFromResourceAtBottom(R.xml.clock_settings);

回答

6

我越来越好,在这里回答我自己的问题:)

的解决之道在于android:order XML参数 - 使用与Preference(或PreferenceGroup或子类的话)将东西整理成屏幕上的正确序列!

您也可以使用setOrder()动态更改此选项,但如果它们已被添加到PreferenceGroup,则不会重新排序Preference