Sadece buraya biraz daha eklemek istiyorum:
UITextField
Sol taraftaki görüntüyü eklemek isterseniz leftView
özelliğini kullanın .UITextField
NOT: Do setine unutmamak leftViewMode
için UITextFieldViewMode.Always
ve sağ için rightViewMode
için UITextFieldViewMode.Always and
varsayılan olduğunuUITextFieldViewModeNever
örneğin
Sol tarafa bir resim eklemek için
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
Sağ tarafa bir resim eklemek için
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
NOT:UITextField
Sol veya sağ tarafa bir resim eklerken dikkat etmeniz gereken bazı şeyler .
ImageView
Ekleyeceğiniz bir çerçeve vermeyi unutmayınUITextField
let imageView = UIImageView (çerçeve: CGRect (x: 0, y: 0, genişlik: 20, yükseklik: 20))
resim arka planınız beyazsa resim görünmez UITextField
Eğer belirli bir konuma resim eklemek isterseniz eklemeniz gerekir ImageView
ait subview UITextField
.
Swift 3.0 Güncellemesi
@Mark Moeykens Güzel bir şekilde genişletti ve @IBDesignable yaptı .
Buna bazı daha fazla özelliği değiştirdim ve ekledim (Alt Satır ve sağ görüntü için dolgu ekleyin).
NOT Eğer sağ tarafa bir resim eklemek istiyorsanız, arayüz oluşturucudaki Force Right-to-Left
seçeneği seçebilirsiniz semantic
(Ancak, sağdaki resim dolgusu, rightViewRect yöntemini geçersiz kılıncaya kadar çalışmayacaktır).
Bunu değiştirdim ve kaynağı buradan ImageTextField indirebilirim