Android - Vista setText da SharedPreference valore utilizzando XML
-
28-09-2019 - |
Domanda
Ho scelto il percorso per avere ogni attività implementare un onSharedPreferenceChangedListener. Al fine di un servizio per aggiornare i valori di essere rispedito a diverse attività in una sola volta (non importa che uno ha il focus)
Quando l'ascoltatore è chiamato, ho solo la chiave. Poi ho dovuto eseguire una ricerca di quella chiave per ottenere il corrispondente View. Questo è rimasta soccombente. Ho provato ad utilizzare getCurrentFocus () e poi una findViewWithTag (). Anche provato un .getRoot () dopo getFocus ().
A scopo di verifica ho solo cercato di ottenere un handle alla vista al di fuori di chi ascolta. Ho dovuto fare in modo Ran setText in un interno runnalbe della UIthread al lavoro.
ho sguardo ad alcuni altri codici e svolgono un mucchio di altro se controlli sulla chiave. Ho potuto fare questo per ottenere dinamicamente una maniglia alla vista, perché io so che cosa l'ID che corrisponde alla stringa chiave, ma in entrambi i sensi sembra inefficiente.
Questo mi porta alla domanda complessiva. È che un modo per popolare il testo di una visualizzazione direttamente da una preferenza utilizzando XML? Allora non avrei dovuto preoccuparsi delle diverse attività di attuazione un ascoltatore. Tutto sarebbe contenuta nel file XML che posso muovere liberamente.
Soluzione
Al fine di un servizio per aggiornamento valori da inviare di nuovo a molti Attività in una sola volta (non importa che uno ha il focus)
Perché non usare un broadast intenti, allora? O l'ascoltatore oggetti registrati dalle attività con il servizio?
E 'questo un modo per popolare il testo di una visualizzazione direttamente da una preferenza utilizzando XML?
Non per attività arbitrari.