2013-06-06 6 views
7

Sto utilizzando uno UITableView su un iPad e per qualche motivo il testo dello UITableViewCell.textLabel viene troncato anche se c'è molto spazio per visualizzare il testo. Ho provato tutti i seguenti, nessuno dei quali è stato risolto:Come impedire a una textLabel di UITableViewCell di troncare il suo testo su iPad

  1. impostare una maschera di larghezza di ridimensionamento automatico flessibile sul cellulare
  2. Calling [cell sizeToFit] dopo aver impostato il testo
  3. Calling [cell.textLabel setNumberOfLines:0] e [cell.textLabel setLineBreakMode:NSLineBreakByWordWrapping]

Non ho ancora provato la sottoclasse di UITableViewCell e l'impostazione esplicita del frame nel metodo layoutSubviews. Cercando di evitarlo, penso che ci dovrebbe essere una soluzione migliore. Inoltre, non voglio ridimensionare il testo: c'è molto spazio per adattare il testo alla dimensione del carattere completo.

enter image description here

+0

Come stai visualizzando i numeri sul lato destro dal ">"? Hai aggiunto una visualizzazione degli accessori personalizzati? – rdelmar

+0

Sto aggiungendo un UILabel come sottoview alla cella. Tuttavia, ho provato a commentare l'UILabel e ancora non funziona. –

+0

Quindi, se lo commentate, la cella è solo una cella standard "Base" con un indicatore di divulgazione, nient'altro? – rdelmar

risposta

1

Alla fine la risposta non ha avuto nulla a che fare con UITableViewCell. C'era una sezione del codice che tronca il testo da visualizzare nella cella della vista tabella! Grazie a tutti per l'aiuto fino a questo punto.

4

impostare il "setNumberOfLines" proprietà dell'etichetta per avvolgere il testo al numero di righe. Se non si desidera il "..." alla fine del testo se è troppo lungo, utilizzare

cell.textLabel.lineBreakMode = UILineBreakModeWordWrap; o NSLineBreakByWordWrapping per iOS 6 o più

tenta di impostare l'altezza e la larghezza della textlable e tableviewcell dynamicaly riferimento this link

+0

. L'ho provato senza successo. Ho aggiornato la mia domanda con queste informazioni. FYI UILineBreakModeWordWrap è deprecato. –

+0

usa NSLineBreakByWordWrapping per iOS 6 o più –

+0

Perché impostare l'altezza può fare la differenza? Ci dovrebbe essere molto spazio per visualizzare il testo nell'altezza predefinita. –

6

u set set textLabel numero di linea 0

 cell.textLabel.numberOfLines=0; 
    cell.textLabel.lineBreakMode=UILineBreakModeWordWrap; or NSLineBreakByWordWrapping; 

Spero che ti aiuta

+0

Ho provato che senza risultato. Ho aggiornato la mia domanda con queste informazioni. FYI UILineBreakModeWordWrap è deprecato. –

0

Ho avuto lo stesso problema. questo mi è successo in iOS 6 e questo è successo anche a me con te celle personalizzate. Ho usato multiline e NSLineBreakByWordWrapping.

ho risolto cambiando tutte le etichette da utilizzare NSLineBreakByCharWrapping