Android,单击ListPreference项时显示对话框

时间:2011-05-30 21:08:15

标签: java android live-wallpaper listpreference

基本上我有一个ListPreference,允许用户更改动态壁纸上某些文字的X位置。

它包含4个条目:顶部,中间,底部和手动输入X.前3个选项没有问题,我只需在我的WallpaperService类中获取SharedPreferences并检查它们是顶部,中部还是底部并更改相应的位置他们的选择。

然而,最后一个选项证明更难,我想要做的是当用户点击“手动输入X”ListPreference项时弹出一个EditText警告框,这样他们就可以为X输入一个值。我只是无法想象如何通过单击特定的List元素来使警报弹出窗口。

2 个答案:

答案 0 :(得分:3)

您可能想要创建自定义ListPreference。基本上您希望从ListPreference扩展(请参阅原始here),并提供自定义protected void onPrepareDialogBuilder(Builder builder),您可以在其中提供额外的“自定义”列表项和onclick来处理选择“自定义”条目。

请注意,我一直在说“自定义”,因为最好让这个课程尽可能重复使用。

答案 1 :(得分:0)

覆盖onPreferenceTreeClick()中的PreferenceActivity,并将其给出的偏好与您想要为其做的事情进行比较。