Desideravo ricevere una notifica quando un elemento veniva aggiunto/rimosso da un array. Se noi non stiamo parlando di array, ad esempio per essere informati quando una stringa è cambiato, c'è una buona soluzione in rapida:Ricevi una notifica quando elemento aggiunto/rimosso nell'array
private var privateWord: String?
var word: String? {
get {
return privateWord
}
set {
if newValue != "" {
notifyThatWordIsChanged()
} else {
notifyThatWordIsEmpty()
}
privateWord = newValue
}
}
Possiamo ottenere un risultato simile, quando ho aggiungere/rimuovere un elemento ad un array?
Questa è una buona soluzione - tuttavia si deve tener presente che tutti gli altri metodi di matrice (come carta, ordinare, ecc) e le proprietà non sono disponibili meno avvolto manualmente in modo simile – Antonio
@Antonio Sì, ma credo che sia facile accedere alla matrice sottostante. 'a.array = a.array.map {...}' – Kirsteins
Sì, volevo solo sottolineare che non è un vero 'array ', e non è * come * un' array (il che significa che non puoi passare a funzioni che prevedono un'istanza di un array). La mia non è una critica però - solo un chiarimento. L'idea è buona, ma ovviamente non è una soluzione per tutti i casi – Antonio