Voglio creare un UITableview
con altezza dinamica per cella. In ogni cella sto visualizzando un messaggio di testo variabile. Ora voglio che la mia cella di tabella sia conforme al testo del messaggio e anche la mia etichetta presente sulla cella dovrebbe visualizzare il testo. Sto rendendo flessibile la mia cella di tabella sulla base del numero di caratteri che possono essere contenuti in una linea. Ma ecco il problema. Alfabeti diversi occupano uno spazio diverso. Quindi, non sono in grado di calcolare quanti alfabeti possono venire in una singola riga. Qualche suggerimento a questo ???Come contare quanti caratteri possono venire in una linea UILabel?
risposta
Prova questo:
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{CGSize size;
if (SYSTEM_VERSION_LESS_THAN(@"7.0")) {
// code here for iOS 5.0,6.0 and so on
CGSize fontSize = [text sizeWithFont:[UIFont fontWithName:@"Helvetica" size:17]];
size = fontSize;
}
else {
// code here for iOS 7.0
NSDictionary *attributesDictionary = [NSDictionary dictionaryWithObjectsAndKeys:
[UIFont fontWithName:@"Helvetica Neue" size:19], NSFontAttributeName,
nil];
CGRect fontSizeFor7 = [text boundingRectWithSize:CGSizeMake(571, 500)
options:NSStringDrawingUsesLineFragmentOrigin
attributes:attributesDictionary
context:nil];
size = fontSizeFor7.size;
}return size.height +30 ;
}
Its Working Fine per iOS 7, ma non funziona per iOS 6 – user3572586
perché +30? 'size.height + 30' – thedp
Controllare la mia risposta
Calculate UITableViewCell height to fit string
Qui si deve calcolare l'altezza delle etichette secondo il testo e quindi impostare l'altezza della cella.
È possibile calcolare l'altezza e la larghezza in modo dinamico utilizzando questo.
spero che vi aiuterà a
Si sta utilizzando: [ourText sizeWithFont: font constrainedToSize: constraintSize lineBreakMode: UILineBreakModeWordWrap]; Questo metodo è stato deprecato. – user3572586
Sì, lo sapevo ... ma funziona per la versione ios inferiore a 7.0. Per gli altri è possibile trovare la sostituzione di esso. Ti ho dato un indizio :) – svrushal
prega mia risposta qui sotto
UILabel *lbl = [[UILabel alloc] init];
lbl.text = @"abcd";
NSLog(@"count %lu",(unsigned long)[lbl.text length]);
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString * yourCellStr = @"The string you want to apply to your cell at this index path";
CGSize maxLblSize = CGSizeMake(320, 200);
CGSize expectedLblSize = [yourCellStr sizeWithFont:[UIFont systemFontOfSize:15] constrainedToSize:maxLblSize lineBreakeMode:NSLineBreakByWordWrapping];
return expectedLblSize.height;
}
sizeWithFont il metodo è deprecato – user3572586
Non si vuole per contare quanti caratteri il testo ha, basta contare l'altezza usando:
h = [NSString stringWithFormat:@"%f",
[post.text boundingRectWithSize:CGSizeMake(298.0f, CGFLOAT_MAX)
options:(NSStringDrawingUsesLineFragmentOrigin)
attributes:[NSDictionary dictionaryWithObject:[UIFont fontWithName:@"Helvetica Neue" size:14.0]
forKey: NSFontAttributeName]
context:nil].size.height]
Usa la larghezza per 298 e il carattere/tipo di carattere.
- 1. Contare quanti caratteri specifici nella stringa
- 2. Come contare quanti elementi soddisfano una condizione in modo idiomatico?
- 3. Contare caratteri minuscoli in una stringa
- 4. Quanti caratteri in varchar (max)
- 5. Quanti caratteri può avere una stringa Java?
- 6. quanti dati possono contenere javascript nel browser?
- 7. Quanti dati possono essere memorizzati in MySQL?
- 8. UILabel e caratteri
- 9. Come contare quanti ascoltatori sono collegati a un evento?
- 10. Come contare quanti valori per livello in un dato fattore?
- 11. Come contare set di caratteri specifici in una stringa
- 12. non possono contare su indici in chrome.tabs.move
- 13. quanti dati possono gestire i grafici js
- 14. Quanti socket possono essere creati da una porta?
- 15. Quanti dati possono essere inviati tramite $ _GET
- 16. Quanti utenti Nodejs e Socket.io possono supportare?
- 17. contare quanti valori in un elenco che soddisfano certe condizioni
- 18. Quanti utenti concorrenti possono gestire un'app Web costruita in Meteor.js?
- 19. Quanti caratteri può contenere un StringBuilder Java?
- 20. grep caratteri limitati - una linea di
- 21. WatchOS2 WCSession Quanti delegati possono avere WCSession in WatchKitExtension?
- 22. I caratteri Emoji non possono essere codificati in JSON
- 23. Determina il numero di caratteri troncati in UILabel
- 24. Mostrando le emoji in una UILabel?
- 25. Un modo elegante per contare i caratteri alfanumerici in una stringa?
- 26. limitare la UILabel a 500 caratteri e Troncare la UIlabel in IOS
- 27. Quanti core cpu possono utilizzare un singolo processo Java?
- 28. UILabel attribuito Testo con più modalità di interruzione di linea
- 29. Come contare il numero di caratteri in un DIV con javascript
- 30. Quanti GB possono allocare malloc per il programma
codice postale che hai provato. – Rushabh
Speriamo che ci siano classi per la gestione con il carattere. Non è necessario calcolare per ogni carattere con font ecc. –