Ответ 1
В соответствии с документом здесь
Вызывается при изменении пользователем предпочтения. Это называется перед тем, как состояние Preference будет обновлено и состояние сохраняется.
И он возвращает True, чтобы обновить состояние Preference с помощью нового значение.
Итак, вы можете сделать следующее
editTextPreference
.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference,
Object newValue) {
if (((newValue.toString().length() == 15) {
//
return true;
}
else{
// invalid you can show invalid message
return false;
}
})
});