Es fácil mostrar una sola etiqueta con el mismo texto pero, ¿qué ocurre cuando desea mostrar una palabra en negrita?¿Cómo se puede poner en negrita solo una palabra en un UILabel?
Ejemplo:
todas sus bases son pertenecen a nosotros.
Es fácil mostrar una sola etiqueta con el mismo texto pero, ¿qué ocurre cuando desea mostrar una palabra en negrita?¿Cómo se puede poner en negrita solo una palabra en un UILabel?
Ejemplo:
todas sus bases son pertenecen a nosotros.
UILabel
no puede dibujar una etiqueta con diferentes atributos/fuentes dentro del texto. Pero Core Text puede. Puede crear una subclase de UILabel
que envuelve una cadena atribuida y utiliza el Texto central para dibujarla. Se puede controlar el dibujo como en this sample code de la guía de programación de texto básico:
// Build up your attributed string, then...
CTLineRef line = CTLineCreateWithAttributedString(attrString);
// Set text position and draw the line into the graphics context
CGContextSetTextPosition(context, 10.0, 10.0);
CTLineDraw(line, context);
CFRelease(line);
Lamentablemente, esto no es posible actualmente. Sin embargo, podría subclase UILabel e incluir esta funcionalidad.
Otra posibilidad sería utilizar un UIWebView, pero esto requiere el uso de etiquetas HTML y el método loadHTML :.
Como escribió Evan Mulawski, UILabel no va a conseguir lo que quiere. En ese caso, tampoco lo harán UITextField ni UITextView.
Otro enfoque sería subclasificar a UIView y escribir un método -drawRect: que haga lo que desee. Lo podría hacer en
Si no va ser requieren una gran cantidad de saltos de línea y de embalaje, entonces probablemente puedas crear algo bastante fácilmente.
UIWebView probablemente sea más rápido, pero parece una sobrecarga para algo tan simple como una etiqueta con estilo.
Creo que esto es lo que está buscando http://stackoverflow.com/questions/3586871/bold-non-bold-text-in-a-single-uilabel – Abhigyan