Tengo un pequeño problema con UILabel de líneas múltiples, mi texto UILabel parece extraño desde el medio y sube cuando llegan nuevas líneas, de modo que la última línea está en el medio siempre. Quiero que se comporte como una vista de texto normal, comenzando desde la parte superior y las líneas pasando una debajo de la otra, la primera línea queda arriba. ¡Lo siento si lo expliqué mal, puedo tratar de elaborar si es necesario! ¡Gracias por adelantado!Haciendo que UILabel de varias líneas empiece el texto desde la parte superior, no al medio
5
A
Respuesta
11
Puede usar el método sizeWithFont:constrainedToSize:lineBreakMode:
en NSString para determinar la altura de un bloque de texto dado una fuente y un ancho restringido. Luego, debe actualizar el marco de la etiqueta para que sea lo suficientemente grande como para abarcar el texto.
CGSize textSize = [label.text sizeWithFont:label.font constrainedToSize:CGSizeMake(label.frame.size.width, MAXFLOAT) lineBreakMode:label.lineBreakMode];
label.frame = CGRectMake(20.0f, 20.0f, textSize.width, textSize.height);
0
Desde método sizeWithFont se decprecated en IOS 7.0 +, se puede utilizar un método alternativo llamado boundingRectWithSize.
Por ejemplo:
NSDictionary *attrsDictionary =[NSDictionary dictionaryWithObject:YourFont forKey:NSFontAttributeName];
NSAttributedString *attrString =[[NSAttributedString alloc] initWithString:yourString attributes:attrsDictionary];
textRect = [attrString boundingRectWithSize:yourSize options:NSStringDrawingUsesLineFragmentOrigin context:nil];
Cuestiones relacionadas
- 1. de varias líneas UILabel en UITableViewCell
- 2. comando de bash que abarca varias líneas con varias líneas de comentarios en el medio
- 3. ¿Cómo puedo preceder el texto en el medio de la línea a varias líneas en Vim?
- 4. UILabel parte visible del texto
- 5. Texto del botón no con varias líneas
- 6. Android SlidingDrawer desde la parte superior?
- 7. Cajón deslizante desde la parte superior
- 8. ¿Cómo alinear el texto a la parte superior de TextView?
- 9. Justificar texto en UILabel iOS
- 10. establecer el número máximo de líneas en uilabel
- 11. Varias líneas de texto curvo en SVG
- 12. Haciendo UILabel táctil
- 13. El texto de UILabel no ajusta la palabra
- 14. hacer que el texto de UILabel negrita
- 15. UILabel Alinear texto al centro
- 16. UILabel personalizado no muestra texto
- 17. Dibujo de video con texto en la parte superior
- 18. Top alineado UILabel, hace el palillo de texto al principio de la etiqueta de vista -ios
- 19. Mantener diálogos en la parte superior de la ventana, pero no en la parte superior de todo
- 20. Determine la distancia desde la parte superior de un div a la parte superior de la ventana con javascript
- 21. ScrollView no muestra la parte superior
- 22. agregar un texto en la parte superior del archivo
- 23. Saltos de línea que no funcionan en UILabel
- 24. Líneas resultantes de UILabel con UILineBreakModeWordWrap
- 25. jQuery obtener la altura desde la parte superior
- 26. UITextView margen extraño en la parte superior?
- 27. Cabecera UITableView que se mantiene en la parte superior
- 28. ¿Puedo ocultar por completo las líneas de texto que están medio cortadas?
- 29. 'border-bottom' en div aparece en la parte superior? Div no está envolviendo el texto?
- 30. Mantener la ventana en la parte superior al cambiar espacios
Tienes mi agradecimiento! –
Es posible que también deba establecer 'label.numberOfLines = 0' –