Je veux juste ajouter quelque chose ici:
Si vous souhaitez ajouter l'image sur UITextFieldle côté gauche, utilisez la leftViewpropriété deUITextField
REMARQUE: n'oubliez pas de définir leftViewModesur UITextFieldViewMode.Alwayset pour que le droit rightViewModepar UITextFieldViewMode.Always anddéfaut soitUITextFieldViewModeNever
par exemple
Pour ajouter une image sur le côté gauche
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
Pour ajouter une image sur le côté droit
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
REMARQUE: certaines choses dont vous devez faire attention lors de l'ajout d'une image sur UITextFieldle côté gauche ou droit.
N'oubliez pas de donner un cadre ImageViewdont vous allez ajouterUITextField
laissez imageView = UIImageView (cadre: CGRect (x: 0, y: 0, largeur: 20, hauteur: 20))
si l'arrière-plan de votre image est blanc, l'image ne sera pas visible sur UITextField
si vous souhaitez ajouter une image à la position spécifique que vous devez ajouter ImageViewcomme sous-vue de UITextField.
Mise à jour pour Swift 3.0
@Mark Moeykens l'a magnifiquement dépensé et le rend @IBDesignable .
J'ai modifié et ajouté quelques fonctionnalités supplémentaires (ajouter la ligne du bas et le rembourrage pour l'image de droite).
REMARQUE si vous souhaitez ajouter une image sur le côté droit, vous pouvez sélectionner l' Force Right-to-Leftoption dans semanticdans le générateur d'interface (mais pour le bon remplissage d'image ne fonctionnera pas tant que vous n'aurez pas remplacé la méthode rightViewRect).

J'ai modifié cela et je peux télécharger la source à partir d'ici ImageTextField
