Necesito incrustar pequeños íconos (una especie de viñetas personalizadas) en mi UILabeliOS7. ¿Cómo puedo hacer esto en el diseñador de interfaces? O al menos en código?
En Android hay leftDrawabley rightDrawablepara etiquetas, pero ¿cómo se hace en iOS? Muestra en android:

ios
objective-c
cocoa-touch
ios7
textkit
AVEbrahimi
fuente
fuente

Respuestas:
Puede hacerlo con los archivos adjuntos de texto de iOS 7 , que son parte de TextKit. Algún código de muestra:
fuente
UIImageViewa tu etiquetaNSAttributedString *attachmentString = [NSAttributedString attributedStringWithAttachment:attachment]; NSMutableAttributedString *myString = [[NSMutableAttributedString alloc] initWithAttributedString:attachmentString]; NSAttributedString *myText = [[NSMutableAttributedString alloc] initWithString:text]; [myString appendAttributedString:myText];Aquí está la forma de incrustar el icono en UILabel.
También para alinear el ícono use attach.bounds
Swift 5.1
Versión Objective-C
fuente
Swift 4.2:
fuente
Su imagen de referencia se parece a un botón. Probar (también se puede hacer en Interface Builder):
fuente
Versión Swift 3
Extensión UILabel
fuente
He realizado una implementación de esta función en Swift aquí: https://github.com/anatoliyv/SMIconLabel
El código es lo más simple posible:
Así es como se ve:
fuente
UIlabelExtensión Swift 4 para agregar imagen a la etiqueta con referencia a las respuestas anterioresfuente
NSAttributedString(string: " " + text, attributes: [.font: self.font])Versión Swift 2.0:
fuente
Intenta arrastrar un
UIViewa la pantalla en IB. Desde allí se puede arrastrar unaUIImageViewyUILabelen la vista que acaba de crear. Establezca la imagen delUIImageViewen el inspector de propiedades como la imagen de viñeta personalizada (que deberá agregar a su proyecto arrastrándola al panel de navegación) y podrá escribir algo de texto en la etiqueta.fuente
intenta de esta manera ...
fuente
Swift 5 Easy Way Simplemente copia y pega lo que quieras
fuente
Puede usar un UITextField con la propiedad leftView y luego establecer el
enabledpropiedad enNOO use un UIButton y
setImage:forControlStatefuente
En Swift 2.0,
Mi solución al problema es una combinación de un par de respuestas a esta pregunta. El problema que enfrenté en la respuesta de @ Phil fue que no podía cambiar la posición del ícono, y siempre aparecía en la esquina derecha. Y la única respuesta de @anatoliy_v, no pude cambiar el tamaño del icono que quiero agregar a la cadena.
Para que funcione para mí, primero hice una
pod 'SMIconLabel'y luego creé esta función:Esta solución no solo lo ayudará a colocar la imagen, sino que también le permitirá realizar los cambios necesarios en el tamaño del icono y otros atributos.
Gracias.
fuente
Extensión Swift 3 UILabel
Consejo: Si necesita algo de espacio entre la imagen y el texto, use uno o dos espacios antes del texto de la etiqueta.
fuente
Puede usar esta función para agregar imágenes o iconos pequeños a la etiqueta
fuente
tienes que hacer un objeto personalizado donde usaste ay
UIViewdentro de donde pusisteUIImageViewayUILabelfuente