In tableView:cellForRowAtIndexPath:
ho il seguente:In UITableView, cell.detailTextLabel.text non funziona ... perché?
cell.textLabel.text = @"label";
cell.detailTextLabel.text = @"detail";
I textLabel
spettacoli come previsto, ma il detailTextLabel
non appare per nulla, anche se non c'è diagnostica. Quello che mi aspettavo era che il testo "dettaglio" apparisse nella cella su una seconda riga, sotto il testo "normale", possibilmente con una dimensione del carattere più piccola.
La stessa domanda viene posta in un altro post qui e l'utente "jbrennan" ha risposto che lo stile di cella tableview deve essere diverso da UITableViewCellStylePlain
. Tuttavia, sembra che ci siano solo due possibili stili, UITableViewCellStylePlain
e UITableViewCellStyleGrouped
. Ottengo lo stesso risultato con entrambi (l'etichetta di dettaglio non appare).
C'è un altro stile di cella che non vedo nella documentazione? UITableView
è stato modificato nell'ultimo aggiornamento e detailTextLabel
non è più disponibile? Devo fare qualcosa in più per farlo apparire? Eventuali suggerimenti?
Sto usando xcode 3.2.5 e costruisco per iPhone 4.2 Simulator.
Giusto! Grazie. Avevo provato a cambiare lo stile in Subtitle, ma ho cambiato UITableViewStyle invece di UITableViewCellStyle e questo non è stato compilato, quindi ho pensato che lo stile Sottotitoli non fosse più disponibile. – RobertL
Haha! Facciamo tutti degli errori stupidi durante la codifica. Penso che se Apple disabilitasse lo stile dei sottotitoli, ci sarebbero state rivolte. –
Sembra che inizializzerà una nuova UITableViewCell ogni volta, invece di dequeuing dallo stack per preservare la memoria. Sembra che l'unico modo per riutilizzare le celle di stile UITableViewCellStyleSubtitle sia la sottoclasse, l'override dell'inizializzatore e chiamare il solito '[tableView dequeueReusableCellWithIdentifier: @" ReuseIdentifier "];' Qualcuno può confermare o negare questo? Vedi la discussione su 'initWithStyle: reuseIdentifier:' https://developer.apple.com/library/ios/documentation/Uikit/reference/UITableViewCell_Class/index.html#//apple_ref/occ/instm/UITableViewCell/initWithStyle:reuseIdentifier: –