Ich habe eine Voreinstellung, die steuert, ob meine App einen Ton abspielt, wenn der Benutzer auf eine Schaltfläche klickt (was oft vorkommt, denke an einen Taschenrechner). Jedes Mal, klickt der Benutzer auf die Schaltfläche die folgende Methode aufgerufen wird:Ist Lesen/Schreiben eine teure Operation?
private void playButtonClickSound() {
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(parentActivity);
boolean sounds = sharedPrefs.getBoolean("prefSounds", false);
if (sounds) {
// blah
}
}
Ich dachte, dass Lesepräferenzen könnte ein teuer Betrieb sein (ähnlich einer E/A-Operation, weil Präferenzen beibehalten werden) und dass, da die Der Benutzer klickt so oft auf Schaltflächen, dass es möglicherweise eine schlechte Idee ist, dies auf diese Weise zu tun.
In der Regel ist es eine schlechte Idee, Einstellungen häufig zu lesen/schreiben? Wenn ja, könnte es einen anderen Weg geben, wie zum Beispiel die Registrierung eines Präferenz-Change-Listeners, um benachrichtigt zu werden, wenn sich eine Präferenz ändert?
Toll, so werde ich es in Zukunft machen. :) –