Ich möchte hier nur noch etwas hinzufügen:
Wenn Sie das Bild UITextField
auf der linken Seite hinzufügen möchten, verwenden Sie die leftView
Eigenschaft vonUITextField
HINWEIS: Vergessen Sie nicht, Satz leftViewMode
zu UITextFieldViewMode.Always
und für Recht rightViewMode
zu UITextFieldViewMode.Always and
Standard istUITextFieldViewModeNever
für zB
Zum Hinzufügen eines Bildes auf der linken Seite
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
Zum Hinzufügen eines Bildes auf der rechten Seite
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
HINWEIS: Einige Dinge, die Sie beachten müssen, wenn Sie ein Bild UITextField
auf der linken oder rechten Seite hinzufügen .
Vergessen Sie nicht, einen Rahmen anzugeben, den ImageView
Sie hinzufügen möchtenUITextField
let imageView = UIImageView (Rahmen: CGRect (x: 0, y: 0, Breite: 20, Höhe: 20))
Wenn Ihr Bildhintergrund weiß ist, ist das Bild auf nicht sichtbar UITextField
Wenn Sie der bestimmten Position ein Bild hinzufügen möchten, müssen Sie es ImageView
als Unteransicht von hinzufügen UITextField
.
Update für Swift 3.0
@ Mark Moeykens Wunderschön ausgegeben und @IBDesignable machen .
Ich habe hier einige weitere Funktionen geändert und hinzugefügt (Bottom Line und Polsterung für das rechte Bild hinzufügen).
HINWEIS Wenn Sie ein Bild auf der rechten Seite hinzufügen möchten, können Sie die Force Right-to-Left
Option im semantic
Interface Builder auswählen (das Auffüllen der richtigen Bilder funktioniert jedoch erst, wenn Sie die rightViewRect-Methode überschreiben).
Ich habe dies geändert und kann die Quelle von hier ImageTextField herunterladen