2012-06-21 42 views
9

我想在第一次应用程序启动时打开一些首选项(通过扩展DialogPreference制作)。而且,这些偏好是按照惯例使用的。Android:有没有办法从代码中显示DialogPreference?

有没有办法完成这个?

编辑:

我有我定制的偏好,做出这样的:

public class CitySelectPreference extends DialogPreference { 
// Some code here 
} 

而作为解决方案,我希望它从代码中显示,并没有涉及到需要的用户首选项屏幕。

+0

你对编译因为这取决于有几种方法 – tyczj

+0

我针对Android 2.2的...此外,发现了一些答案这里是什么版本:HTTP:// stackoverflow.com/a/4869034/1048087 – Prizoff

+0

我可能会误解您的问题,但在活动的oncreate方法中显示对话框首选项有什么问题? – hmdavis

回答

0

只是这样做:

CitySelectPreference preference = (CitySelectPreference) findPreference("city_pref_key") 

//You have to set a key to yout PreferenceScreen 
PreferenceScreen screen = (PreferenceScreen) findPreference("screen_pref_key"); 

//Retrieve the index of the preference in preferenceScreen 
int index = preference.getOrder(); 

//Perform a click 
screen.onItemClick(null, null, index, 0); 
相关问题