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

问题描述

| 基本上,我有一个ListPreference,允许用户更改我的动态壁纸上某些文本的X位置。 它包含4个条目:顶部,中间,底部和手动输入X。前3个选项没问题,我只需在我的WallpaperService类中获取SharedPreferences,然后检查它们是顶部,中间还是底部,并根据其选择更改位置。 但是,最后一个选项被证明更加困难,我想做的是当用户单击\“手动输入X \” ListPreference项时弹出EditText警报框,以便他们可以输入X的值。我只是想不通如何通过单击特定的List元素使警报弹出。     

解决方法

        您可能想创建一个自定义
ListPreference
。基本上,您想从ѭ0扩展(请参阅此处的原始内容),并提供一个自定义
protected void onPrepareDialogBuilder(Builder builder)
,在其中提供其他\“ custom \”列表项和onclick来处理\“ custom \”条目的选择。 请注意,我一直说\“ custom \”,因为使此类尽可能重用是一种最佳实践。     ,        在您的
PreferenceActivity
中覆盖
onPreferenceTreeClick()
,然后将其与您要执行某项操作的偏好进行比较。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...