Voglio solo aggiungere qualche altra cosa qui:
Se vuoi aggiungere l'immagine sul UITextField
lato sinistro usa la leftView
proprietà diUITextField
NOTA: non dimenticare di impostare leftViewMode
su UITextFieldViewMode.Always
e per il diritto rightViewMode
di UITextFieldViewMode.Always and
default èUITextFieldViewModeNever
per es
Per aggiungere un'immagine sul lato sinistro
textField.leftViewMode = UITextFieldViewMode.Always
let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 20, height: 20))
let image = UIImage(named: imageName)
imageView.image = image
textField.leftView = imageView
Per aggiungere un'immagine sul lato destro
textField.rightViewMode = UITextFieldViewMode.Always
let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 20, height: 20))
let image = UIImage(named: imageName)
imageView.image = image
textField.rightView = imageView
NOTA: alcune cose che devi fare attenzione durante l'aggiunta di un'immagine sul UITextField
lato sinistro o sul lato destro.
Non dimenticare di fornire una cornice di ImageView
cui aggiungeraiUITextField
lascia imageView = UIImageView (frame: CGRect (x: 0, y: 0, larghezza: 20, altezza: 20))
se lo sfondo dell'immagine è bianco, l'immagine non sarà visibile UITextField
se vuoi aggiungere un'immagine alla posizione specifica devi aggiungere ImageView
come sottoview di UITextField
.
Aggiornamento per Swift 3.0
@Mark Moeykens L'ha speso magnificamente e lo ha reso @IBDesignable .
Ho modificato e aggiunto alcune altre funzionalità (aggiungi Bottom Line e padding per l'immagine a destra) in questo.
NOTA se si desidera aggiungere un'immagine sul lato destro, è possibile selezionare l' Force Right-to-Left
opzione nel semantic
generatore di interfacce (ma per il riempimento dell'immagine a destra non funzionerà fino a quando non si sovrascriverà il metodo rightViewRect).
L'ho modificato e posso scaricare il sorgente da qui ImageTextField