Sto utilizzando Edittextpreference come una delle preferenze nella sezione delle impostazioni. Voglio convalidare questo edittextpreference quando l'utente inserisce i dati in esso e fa clic su OK; prima di salvarlo in sharedpreference.Android EditText convalida delle preferenze
Sto provando a fare qualcosa del genere ma questo prima salva la preferenza.
editTextPreference
.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference,
Object newValue) {
if (((newValue.toString().length() == 15) {
// save preference only if length is equal to 15
}
})
});
qualcuno può mi guida come convalidare edittextpreference prima che venga salvato in sharedpreference in modo che io posso decidere se voglio salvarlo o meno.
Così sto loading preferenze da XML attraverso addPreferencesFromResource (R.xml.settings); e implementando SharedPreferences.OnSharedPreferenceChangeListener e Preference.OnPreferenceChangeListener in PreferenceFragment invece di impostarlo su EditTextPreference come descritto. Il listener onPreferenceChange non viene mai chiamato. Solo la funzione onSharedPreferenceChanged. Perché pensi? – marienke
http://stackoverflow.com/a/41446046/956975 <- potrebbe avere qualcosa a che fare con esso (differenza tra SharedPreferences e Preferences). – marienke