Je veux juste ajouter quelque chose ici:
Si vous souhaitez ajouter l'image sur UITextField
le côté gauche, utilisez la leftView
propriété deUITextField
REMARQUE: n'oubliez pas de définir leftViewMode
sur UITextFieldViewMode.Always
et pour que le droit rightViewMode
par UITextFieldViewMode.Always and
dé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 UITextField
le côté gauche ou droit.
N'oubliez pas de donner un cadre ImageView
dont 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 ImageView
comme 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-Left
option dans semantic
dans 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