项目中需要记忆用户上次操作的设置项(Preference),也就是不通过Preference的逐级选择找到最终的Preference,解决方案:
需要启动的是PreferenceScreen,Demo如下:
PreferenceScreen ps = (PreferenceScreen) this.getPreferenceScreen().getPreference(2);//2应该是一个全局变量,记录用户上次操作的索引 this.setPreferenceScreen(ps);
也可以用Dialog进行显示,Demo如下:
PreferenceScreen ps = (PreferenceScreen) this.getPreferenceScreen().getPreference(2); ListAdapter adapter = ps.getRootAdapter(); ListView lv = new ListView(this); lv.setAdapter(adapter); Dialog dialog = new Dialog(this); dialog.setContentView(lv); dialog.show();