使用自定义com.android.internal.R.layout.preference

时间:2012-01-27 15:01:55

标签: android layout preference

有没有办法设置android.preference.Preference的layoutResId?我需要将com.android.internal.R.layout.preference替换为ListView以外的东西。 (我希望在另一个视图中使用PreferenceActivity,并在其中扩展该视图中的首选项层次结构,而不是仅显示默认的ListView)。通过PreferenceActivity,我可以获得PreferenceManager,但是PreferenceManager.getPreferenceScreen是包私有的。 PreferenceScreen.setLayoutResId可以更改我想要的ResId,但我无法得到它。如果可以的话,会改变这项工作还是会破坏它?

1 个答案:

答案 0 :(得分:1)

只要布局中某处setContentView的ID为PreferenceActivity(或ListView来自android.R.id.list,您就可以在@android:id/list上致电{{1}} XML)。这将是偏好被夸大的目标。只要满足此要求,您就可以自由添加任何其他视图。