Android 共享引用验证
我对android开发者有点陌生。我的应用程序上有一个偏好屏幕,上面有一堆EditTextPreference和复选框pref。我感兴趣的是对EditTextPreference的输入进行验证。使用android似乎无法做到这一点,所以我开发了一个扩展edittextpreference的类 例如,我有一个文本首选项,其有效范围仅为0到1。文本首选项将接受任何数字,但我需要在设置之前验证这一点Android 共享引用验证,android,sharedpreferences,android-edittext,edittextpreference,Android,Sharedpreferences,Android Edittext,Edittextpreference,我对android开发者有点陌生。我的应用程序上有一个偏好屏幕,上面有一堆EditTextPreference和复选框pref。我感兴趣的是对EditTextPreference的输入进行验证。使用android似乎无法做到这一点,所以我开发了一个扩展edittextpreference的类 例如,我有一个文本首选项,其有效范围仅为0到1。文本首选项将接受任何数字,但我需要在设置之前验证这一点 我正在重写setText方法,并尝试在实际设置值之前在那里进行验证。SetText只传递文本字符串,如
我正在重写setText方法,并尝试在实际设置值之前在那里进行验证。SetText只传递文本字符串,如何知道要验证的内容?我怎样才能得到那个信息?换句话说,我想重用我的类来验证我所有的文本首选项,并且我想在首选项本身中找到一些东西来告诉我它是什么类型,或者它的范围是什么。好问题,我正在寻找使用addTextChangedListener的答案。
Preference pref = findPreference("OutputFolder");
pref.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference,
Object newValue) {
// Do the validation here
}
return true;
}
});