Sto costruendo un'applicazione per chitarra Android e ho bisogno di un modo per GuitarString oggetti per informare più ascoltatori che è appena stato riprodotto. Questo include l'attuale Activity e tutte le istanze di GuitarStringView che hanno come GuitarString (la chitarra viene visualizzata due volte, ingrandita e spenta).
Finora l'ho gestito avendo un ArrayList<OnPlayedListener> su GuitarString e ogni GuitarStringView o Activity si aggiunge a quell'elenco. La mia classe Guitar è un Singleton (che so che alcuni potrebbero disapprovare) quindi ora devo assicurarmi che gli oggetti si rimuovano dalla matrice di ascoltatori quando vengono eliminati.
Quindi la mia domanda è, è un buon approccio, o c'è un modello che dovrei usare per gestire questo?