Je fais un analyseur RSS pour iPhone et iPod Touch et je dois être en mesure de définir le nombre de lignes affichées dans chaque cellule pour chaque article. Je voudrais casser tous les 39 caractères, ce qui correspond le plus à une ligne à la taille de police que j'utilise.Calcul des sauts de ligne tous les N caractères?
Je voudrais prendre le nombre de caractères dans une chaîne et le diviser par le nombre de caractères par ligne. J'aimerais avoir un entier comme réponse, arrondi au besoin.
C'est ce que j'ai jusqu'à présent. Qu'est-ce qui ne va pas?
NSNumber *lines = [[NSNumber alloc] initWithInteger:[cell.textLabel.text length]/kLineLength];
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setRoundingMode:NSNumberFormatterRoundUp];
[formatter setRoundingIncrement:[[[NSNumber alloc]initWithInteger:1]autorelease]];
NSNumber *roundedLines = [[NSNumber alloc]initWithInteger: [[formatter numberFromString:[lines stringValue]]integerValue]];
[cell.textLabel setNumberOfLines:[roundedLines integerValue]];
[roundedLines release];
[formatter release];
[lines release];
EDIT
Je ne suis pas après les sauts de ligne tant que de savoir combien de lignes pour donner l'étiquette. Donc, bien que je mette effectivement des sauts de ligne, je ne le fais pas vraiment. Je laisse l'iOS déterminer où casser, je lui dis simplement combien de lignes utiliser.
Le problème est que je ne sais pas combien de temps mes titres seront et je ne sais pas combien de lignes à utiliser. J'ai besoin de calculer cela à la volée pour chaque titre. – Moshe