iOS: comunicazione al controllore della vista principale




uinavigationcontroller uitableview (2)

Il controller della vista genitore è una tabella di parole. La vista bambino viene visualizzata sullo schermo e consente di giocare con quella parola. L'utente può "segnalare" la parola (che salva nei valori predefiniti dell'utente). Come dovrebbe ora la tabella genitore scoprire che la parola è stata contrassegnata in modo da poter visualizzare un'icona a bandiera piuttosto carina?


L'utilizzo della delega è l'opzione migliore. Fai diventare genitore un delegato di tuo figlio. Indipendentemente dal tipo di dati che si desidera utilizzare per passare, nel proprio figlio VC, dal proprio - (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath () se si consente di selezionare una sola parola a una volta o un tasto premere la funzione se si consente la selezione multipla. Chiama il tuo metodo delegato per ricevere quelle parole inviate da bambino, quindi puoi fare quello che vuoi con esso.

Spero che questo ti aiuti.


Per trasferire i dati dal controller di visualizzazione figlio a quello principale è necessario utilizzare Protocolli e delegati

Vedi la sezione Passing Data Back di questa risposta SO accettata per una spiegazione dettagliata sul passaggio di informazioni avanti e indietro tra i controller di visualizzazione

È possibile avere un valore boolean nel controller di visualizzazione figlio.

È possibile impostare il valore booleano su true quando l'utente lo "segnala".

Come mostrato sopra, è possibile inviare il valore al controllore della vista genitore indipendentemente dal fatto che sia stato contrassegnato o meno.

Spero che questo ti aiuti.





uitableview