2010-05-10 10 views

risposta

18

Sì. Basta aggiungere uno UITextField, con il suo font e textColor impostato su valori appropriati, come sotto-visualizzazioni di contentView della cella di tabella. Probabilmente si vorrà dare al campo anche uno tag, in modo da poter facilmente ottenere un riferimento ad esso usando il metodo -viewWithTag: .

Con i moduli brevi è possibile scappare mantenendo una serie di celle, una per ogni campo e consegnandole alla vista tabella senza passare attraverso il meccanismo -dequeueReusableCellWithIdentifier:, ma se si ha un sacco di roba da inserire poi diventa più complicato. In tal caso, probabilmente si desidera assegnare un identificatore di riutilizzo diverso a ciascun tipo di cella, una per le celle di campo di testo, una per le celle di commutazione, una per le celle di scorrimento, ecc. Una volta deselezionata o creata la cella della riga, si 'quindi prendi il suo controllo dalla vista del contenuto (come sopra) e imposta il suo valore da ovunque tu abbia memorizzato quello.

+1

Grazie! E come terminare la modifica della cella se faccio clic all'esterno di TableView? –

+0

In realtà aggiungerli come subviews di 'contentView' non lo faranno apparire nell'immagine. Andrà anche sotto il textlabel. Ho impostato il campo di testo come 'accessorioView' e ha funzionato. Tuttavia, devi codificare la larghezza di esso come un numero magico ed è un problema se stai supportando entrambi gli orientamenti dello schermo. – Isuru

0

Modificare sul posto utilizzando un "Contenuto: celle statiche" e farlo apparire come uno stile predefinito UITableviewCell.

  1. In UITableView creare due celle: una personalizzata e una sottotitoli in stile.
  2. Copia l'etichetta "titolo" corrispondente al sottotitolo in stile UITableViewCell in UITableViewCell personalizzato.
  3. In Custom UITableViewCell, rilasciare un campo UIText. Copia in questo i parametri di stile dalla UILabel di dettaglio da Subtitle Styled UITableViewCell in questo UITextField.
  4. Effettuare le disposizioni necessarie.

L'aspetto è abbastanza uguale, no?

Ora, fare la roba IBoutlet.