我的 Android 应用程序中有一个 PreferenceActivity 允许用户配置各种参数。其中一些是在 EditTextPreferences 中输入的数字。我意识到我可以改用 ListPreferences 来强制输入为数字,但是允许值的范围太大而无法方便。
因此,我想添加代码来验证各种条目,以尽可能地保护用户。我在应用程序的其他地方有非常相似的代码,它使用附加到 EditTexts 的 setOnFocusChangeListener 检查选项卡活动中某些 EditText 的内容:
dataField.setOnFocusChangeListener (new DataFieldFocusChangeListener());
这就像一个魅力。
不幸的是,我的 PreferenceActivity 中的 EditTextPreference 中的 EditText 的焦点更改侦听器似乎没有被调用过。任何人都可以建议适合这种情况的听众吗?