C'è un modo per rimuovere un listener da un View
in Android? Ho un Checkbox
che ho allegato un CheckChangedListener
a. Il problema è che chiamare setChecked()
provoca l'attivazione del mio ascoltatore.Rimuovere un listener da una vista in Android
Se non riesco a rimuovere un listener, esiste un modo per impedire l'ascolto del listener quando chiamo setChecked()
manualmente rispetto a quando viene controllato da un evento di tocco?
ID essere cauti sull'utilizzo di funzionalità non documentate, possono cambiare in qualsiasi momento. –
Non definirei esattamente questa "funzione non documentata". Se una vista supporta un singolo listener di un determinato tipo e si imposta quel listener su null, cos'altro ci si aspetta che accada? :) – adamp
Non è una funzionalità non documentata. È solo non documentato che è sicuro passare in null, che è. Il listener interno utilizzato da view inizia come null sulla costruzione e viene confrontato con null quando si determina se inviare l'evento. L'impostazione di null la reimposta sul valore che ha prima di impostare un listener. – Falmarri