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:
func drawTextWithIcon(labelName: SMIconLabel, imageName: String, labelText: String!, width: Int, height: Int) {
let newSize = CGSize(width: width, height: height)
let image = UIImage(named: imageName)
UIGraphicsBeginImageContextWithOptions(newSize, false, 0.0)
image?.drawInRect(CGRectMake(0, 0, newSize.width, newSize.height))
let imageResized = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
labelName.text = " \(labelText)"
labelName.icon = imageResized
labelName.iconPosition = .Left
}
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.