2017-09-06 141 views
0

我有一个自定义的首选项,其范围扩展为PreferenceFragment。 默认PreferenceFragment有一个内部ListView。你可以在这里检查它的默认布局:如何在PreferenceFragment的ListView上添加SwitchPreference?

https://github.com/android/platform_frameworks_base/blob/master/core/res/res/layout/preference_list_fragment.xml

这种内部ListView是对我来说足够。于是我就打电话

ListView listView = (ListView) getView().findViewById(android.R.id.list); 

然后填写ListView与我的数据。

注意我不需要调用此功能addPreferencesFromResource

但是现在我想在我的ListView上面添加SwitchPreference。 请帮我怎么做?

回答

0

像这样在PreferenceFragment这样尝试。

PreferenceScreen screen = getPreferenceScreen(); 
SwitchPreference switchPreference = new SwitchPreference(context); 

// Assign value to switchPreference 

screen.addPreference(switchPreference) 
+0

'getPreferenceScreen()'返回'null'。因为我不会调用'addPreferencesFromResource' – TOP

+0

@TOP那么你如何添加其他偏好? –