2010-10-12 5 views
0

J'utilise sizeWithFont:constrainedToSize:lineBreakMode: pour calculer la hauteur réelle d'un UILabel.UILineBreakModeTailTruncation dans sizeWithFont: constrainedToSize: lineBreakMode: est ignoré

Cependant, la hauteur obtenue est toujours basée sur le NSString complet (avant qu'il ne soit tronqué).

En fait, les deux sizeWithFont:constrainedToSize:lineBreakMode: et sizeWithFont:constrainedToSize: produisent des résultats identiques, comme si le UILineBreakModeTailTruncation était ignoré!

Ce code produit 60.000000 peu importe ce que j'essaie, mais le premier résultat devrait être inférieur à 60. Une idée pourquoi?

CGSize aSize; 

aSize=[@"One two three four five six seven eight nine ten" sizeWithFont:[UIFont boldSystemFontOfSize:12] constrainedToSize:CGSizeMake(100, 100)]; 

NSLog(@"aSize.height: %f",aSize.height); //returns 60.000000 

aSize=[@"One two three four five six seven eight nine ten" sizeWithFont:[UIFont boldSystemFontOfSize:12] constrainedToSize:CGSizeMake(100, 100) lineBreakMode:UILineBreakModeTailTruncation]; 

NSLog(@"aSize.height: %f",aSize.height); //returns 60.000000 

Merci.

Répondre

0

Désolé, j'ai découvert que la chaîne n'a pas été tronquée, car le cadre peut contenir toute la chaîne.

+1

Vous devez étiqueter votre propre réponse en tant que réponse acceptée, afin que la question apparaisse comme répondue dans la base de données. –

Questions connexes