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.
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. –