¿Cómo subrayar un UILabel
en Swift? Busqué los de Objective-C pero no pude hacer que funcionaran en Swift.
ios
swift
overriding
uilabel
nsattributedstring
Esqarrouth
fuente
fuente
NSAttributedString
?Respuestas:
Puede hacer esto usando NSAttributedString
Ejemplo:
EDITAR
Para tener los mismos atributos para todos los textos de un UILabel, te sugiero que subclases UILabel y el texto reemplazante, así:
Rápido 4.2
Swift 3.0
Y pones tu texto así:
ANTIGUO:
Rápido (2.0 a 2.3):
Rápido 1.2:
fuente
UTF16
recuento en lugar del recuento de caracteres al crear tu texto RangoNSRange
Swift 5 y 4.2 un revestimiento:
Swift 4 one liner:
Swift 3 one liner:
fuente
Si está buscando una forma de hacer esto sin herencia:
Rápido 5
Rápido 3/4
fuente
UTF16
recuento en lugar del recuento de caracteres al crear tuNSRange
Solo una pequeña corrección para la respuesta de Shlome en Swift 4 y Xcode 9 .
fuente
UTF16
recuento en lugar del recuento de caracteres al crear tuNSRange
Rápido 4:
1- Cree una extensión de cadena para obtener el texto atribuido.
2- Use lo
Extensión:
Cómo usarlo en buttton:
Cómo usarlo en etiquetas:
O versión Stoyboard
fuente
Puede subrayar el
UILabel
texto con Interface Builder.Aquí está el enlace de mi respuesta: Agregar atributo de subrayado al texto parcial UILabel en el guión gráfico
fuente
Misma respuesta en Swift 4.2
Para UILable
Llame a UILabel como a continuación
Para UIButton
Llame para UIButton como a continuación
Miré las respuestas anteriores y algunas de ellas son el valor del texto de desenvolvimiento forzado . Sugeriré obtener valor desenvolviéndolo de manera segura. Esto evitará fallas en caso de valor nulo. Espero que esto ayude :)
fuente
UTF16
recuento en lugar del recuento de caracteres al crear tuNSRange
Swift 4, 4.2 y 5.
Necesito subrayar un texto particular en UILabel. Entonces, busque el rango y establezca atributos.
Salida
fuente
Subrayar varias cadenas en una oración.
Úselo de esta manera.
fuente
Swift 4 cambios. Recuerde utilizar NSUnderlineStyle.styleSingle.rawValue en lugar de NSUnderlineStyle.styleSingle .
'
fuente
La respuesta anterior está causando un error en mi entorno de compilación.
Esto no funciona en Swift 4.0:
Prueba esto en su lugar:
Espero que esto ayude a alguien.
fuente
// Versión Swift 4
fuente
También puede usar esto si desea lograr solo la mitad de la etiqueta como subrayado: - // Para Swift 4.0+
fuente
Para Swift 2.3
y en ViewController
en
ViewDidLoad
Method o en tu función solo escribesubrayará el título de su botón
fuente
Una clase para establecer y eliminar el subrayado de los botones de la interfaz de usuario de Swift 5. Espero que esto ayude
fuente