Hızlı UITextField'da simge / resim ekle


102

UITextField'a simge / resim eklemek istiyorum. Simge / resim yer tutucunun içinde bırakılmalıdır.

görüntü açıklamasını buraya girin

Bunu denedim:

var imageView = UIImageView();
var image = UIImage(named: "email.png");
imageView.image = image;
emailField.leftView = imageView;

Teşekkürler.


74
Yanlışlıkla noktalı virgül eklediniz: D
Gerald

10
emailField.leftView = UIImageView(image: UIImage(named: "search")):)
tspentzas

@IBDesignableBunu bu örnekte olduğu gibi zarif bir şekilde kullanarak yapabiliriz: stackoverflow.com/a/51841433/8238512
Rizwan

Yanıtlar:


122

Eklemeyi dene emailField.leftViewMode = UITextFieldViewMode.Always

(Varsayılan leftViewModeolan Never)

Swift 4 için Güncellenmiş Cevap

emailField.leftViewMode = UITextFieldViewMode.always

emailField.leftViewMode = .always

Hmm benim için çalıştı, güncellenmiş değer ( UITextFieldViewMode.Always) ile denedin mi? Neyin işe yaramadığına dair bir fikriniz var mı? (örneğin derlendi mi?)
Markus

Bu, 'ViewWillAppear' bölümündeki kodumun tamamı: 'var imageView = UIImageView (); var image = UIImage (adlandırılmış: "email.png"); imageView.image = resim; emailTextField.leftView = imageView; emailTextField.leftViewMode = UITextFieldViewMode.Always
informatiker

@informatiker Peki, bağlantılarınızın doğru olduğundan emin misiniz, örneğin arka plan rengini ayarlarsanız emailTextFieldgerçekten değişiyor mu? Ve görüntünün orada olduğundan emin misin? Örneğin, başka bir UIImageView oluşturun ve imagebunun çalıştığını doğrulamak için onu yükleyin .
Markus

4
Evet teşekkürler. Sorun, simgenin beyaz olması ve beyaz arka planda görünmemesiydi.
informatiker

5
Aramama devam ettim ve sonunda işe yaradım, resim görünümü için çerçeveyi ayarlamayı kaçırdım. Görünüşe göre görüntüyü uitext alanına eklemeden önce çerçeveyi ayarlamamız gerekiyor. Bunun gibi bir şeyimageView1.frame = CGRect(x: 5, y: 0, width: userName.frame.height, height: userName.frame.height) view.addSubview(imageView1)
Sashi

125

Sahil'in harika bir cevabı var ve ben bunu alıp bir @ IBDesignable'a genişletmek istedim, böylece geliştiriciler Storyboard'daki UITextFields'a görseller ekleyebilirler.

Swift 4.2

import UIKit

@IBDesignable
class DesignableUITextField: UITextField {
    
    // Provides left padding for images
    override func leftViewRect(forBounds bounds: CGRect) -> CGRect {
        var textRect = super.leftViewRect(forBounds: bounds)
        textRect.origin.x += leftPadding
        return textRect
    }
    
    @IBInspectable var leftImage: UIImage? {
        didSet {
            updateView()
        }
    }
    
    @IBInspectable var leftPadding: CGFloat = 0
    
    @IBInspectable var color: UIColor = UIColor.lightGray {
        didSet {
            updateView()
        }
    }
    
    func updateView() {
        if let image = leftImage {
            leftViewMode = UITextField.ViewMode.always
            let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 20, height: 20))
            imageView.contentMode = .scaleAspectFit
            imageView.image = image
            // Note: In order for your image to use the tint color, you have to select the image in the Assets.xcassets and change the "Render As" property to "Template Image".
            imageView.tintColor = color
            leftView = imageView
        } else {
            leftViewMode = UITextField.ViewMode.never
            leftView = nil
        }
        
        // Placeholder text color
        attributedPlaceholder = NSAttributedString(string: placeholder != nil ?  placeholder! : "", attributes:[NSAttributedString.Key.foregroundColor: color])
    }
}

Burada ne oluyor?

Bu tasarım size şunları sağlar:

  • Solda bir resim ayarlayın
  • UITextField'in sol kenarı ile görüntü arasına dolgu ekleyin
  • Görüntü ve Yer Tutucu metni eşleşecek şekilde bir renk ayarlayın

Notlar

  • Görüntü renginin değişmesi için koddaki açıklamadaki notu takip etmeniz gerekir.
  • Öykü Panosunda görüntü rengi değişmeyecektir. Simülatörde / cihazda rengi görmek için projeyi çalıştırmanız gerekir.

Storyboard'da tasarlanabilir Storyboard

İşlem esnasında Çalışma süresi


5
Görüntünün yeniden boyutlandırılmasını önlemek için imageView.contentMode = .AspectFit'e eklendi.
Jerland2

3
Harika gönderi için çok teşekkürler! Ayrıca bir RTL seçeneğine sahip olacak şekilde değiştirdim. Kod burada bulunabilir: pastebin.com/7CCm6NEB
Ali Almohsen

Aferin beyler! Ben de daha sonra aynı şeyi yapmıştım. Ha ha
Mark Moeykens

14
resim ve metin arasındaki dolguya ne dersiniz?
Zaporozhchenko Oleksandr

1
Harika cevap.
Ripa Saha

51

Sadece buraya biraz daha eklemek istiyorum:

UITextFieldSol taraftaki görüntüyü eklemek isterseniz leftViewözelliğini kullanın .UITextField

NOT: Do setine unutmamak leftViewModeiçin UITextFieldViewMode.Alwaysve sağ için rightViewModeiçin UITextFieldViewMode.Always andvarsayı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 .

  • ImageViewEkleyeceğ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 ImageViewait 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-Leftseçeneği seçebilirsiniz semantic(Ancak, sağdaki resim dolgusu, rightViewRect yöntemini geçersiz kılıncaya kadar çalışmayacaktır).

görüntü açıklamasını buraya girin

Bunu değiştirdim ve kaynağı buradan ImageTextField indirebilirim

görüntü açıklamasını buraya girin


bunu uzantılara nasıl ekleyebilirim ve görünüm denetleyicimde arama yapabilirim? bana önerebilir misin
narahari_arjun

Çok basit! basitçe UIViewController uzantısında işlev oluşturun ve bu işlevi çağırırken görüntü adı ve metin alanı ref geçirin.
Sahil

extension UIViewController {func addLeftImage (imageName: String, textField: UITextField) {textField.leftViewMode = UITextFieldViewMode.Allow imageView = UIImageView (çerçeve: CGRect (x: 0, y: 0, genişlik: 20, yükseklik: 20)) let resim = UIImage (named: imageName) imageView.image = image textField.leftView = imageView}} ve self.addLeftImage ("imganame", textField: yourtextfield)
Sahil

simge konumunu değiştirmeye çalıştım. ancak bu kodu kullanarak değiştirilmedi
Rahul Phate

22

Resimli UITextField (sol veya sağ)

Bir uzantı oluşturmak için önceki gönderilerden ilham alan başka bir yol.

Resmi sağa veya sola koyabiliriz

extension UITextField {

enum Direction {
    case Left
    case Right
}

// add image to textfield
func withImage(direction: Direction, image: UIImage, colorSeparator: UIColor, colorBorder: UIColor){
    let mainView = UIView(frame: CGRect(x: 0, y: 0, width: 50, height: 45))
    mainView.layer.cornerRadius = 5

    let view = UIView(frame: CGRect(x: 0, y: 0, width: 50, height: 45))
    view.backgroundColor = .white
    view.clipsToBounds = true
    view.layer.cornerRadius = 5
    view.layer.borderWidth = CGFloat(0.5)
    view.layer.borderColor = colorBorder.cgColor
    mainView.addSubview(view)

    let imageView = UIImageView(image: image)
    imageView.contentMode = .scaleAspectFit
    imageView.frame = CGRect(x: 12.0, y: 10.0, width: 24.0, height: 24.0)
    view.addSubview(imageView)

    let seperatorView = UIView()
    seperatorView.backgroundColor = colorSeparator
    mainView.addSubview(seperatorView)

    if(Direction.Left == direction){ // image left
        seperatorView.frame = CGRect(x: 45, y: 0, width: 5, height: 45)
        self.leftViewMode = .always
        self.leftView = mainView
    } else { // image right
        seperatorView.frame = CGRect(x: 0, y: 0, width: 5, height: 45)
        self.rightViewMode = .always
        self.rightView = mainView
    }

    self.layer.borderColor = colorBorder.cgColor
    self.layer.borderWidth = CGFloat(0.5)
    self.layer.cornerRadius = 5
}

}

Kullanım:

if let myImage = UIImage(named: "my_image"){
    textfield.withImage(direction: .Left, image: myImage, colorSeparator: UIColor.orange, colorBorder: UIColor.black)
}

Zevk almak :)


1
Günümü tamamladınız, "view.backgroundColor" ve "imageView.tintColor" öğelerini tamamen özelleştirilebilir hale getirmek için özelleştirdim. Cevabınız için çok teşekkürler xD
Andres Paladines

1
Bu harika
Mohamed Haseel

1
Bu en iyi ve basit cevaplar
Gerardo Salazar Sánchez

15

Dolgu oluşturmak için, görüntüyü bir kap görünümünün içine yerleştirmeyi seviyorum. Simge yerleşiminden memnun olduğunuzda arka plan rengini kaldırabilirsiniz.

görüntü açıklamasını buraya girin

let imageView = UIImageView(frame: CGRect(x: 8.0, y: 8.0, width: 24.0, height: 24.0))
let image = UIImage(named: "my_icon")
imageView.image = image
imageView.contentMode = .scaleAspectFit
imageView.backgroundColor = UIColor.red

let view = UIView(frame: CGRect(x: 0, y: 0, width: 32, height: 40))
view.addSubview(imageView)
view.backgroundColor = .green
textField.leftViewMode = UITextFieldViewMode.always
textField.leftView = view

Teşekkür ederim. Renklerle iyi bir açıklama.
Hamid Reza Ansari

13

Swift 3.0 için textField'ın sol tarafına resim ekleyin

textField.leftView = UIImageView(image: "small-calendar")
textField.leftView?.frame = CGRect(x: 0, y: 5, width: 20 , height:20)
textField.leftViewMode = .always

6

Swift 5

@IBOutlet weak var paswd: UITextField! {
    didSet{
      paswd.setLeftView(image: UIImage.init(named: "password")!)
      paswd.tintColor = .darkGray
      paswd.isSecureTextEntry = true
    }   
 }

Uzantı oluşturdum

extension UITextField {
  func setLeftView(image: UIImage) {
    let iconView = UIImageView(frame: CGRect(x: 10, y: 10, width: 25, height: 25)) // set your Own size
    iconView.image = image
    let iconContainerView: UIView = UIView(frame: CGRect(x: 0, y: 0, width: 35, height: 45))
    iconContainerView.addSubview(iconView)
    leftView = iconContainerView
    leftViewMode = .always
    self.tintColor = .lightGray
  }
}

Sonuç

görüntü açıklamasını buraya girin


4

2020 - makul çözüm

Apple'ın bu çılgınlığıyla ilgili olarak.

İşte bunu yapmanın belki de "en net", en basit yolu:

görüntü açıklamasını buraya girin

İlk önce metni doğru bir şekilde taşımalısınız.

Bu kritik QA'ya dikkat edin : https://stackoverflow.com/a/27066764/294884

class TidyTextField: UITextField {
    
    @IBInspectable var leftImage: UIImage? = nil
    @IBInspectable var leftPadding: CGFloat = 0
    @IBInspectable var gapPadding: CGFloat = 0
    
    private var textPadding: UIEdgeInsets {
        let p: CGFloat = leftPadding + gapPadding + (leftView?.frame.width ?? 0)
        return UIEdgeInsets(top: 0, left: p, bottom: 0, right: 5)
    }
    
    override open func textRect(forBounds bounds: CGRect) -> CGRect {
        return bounds.inset(by: textPadding)
    }
    
    override open func placeholderRect(forBounds bounds: CGRect) -> CGRect {
        return bounds.inset(by: textPadding)
    }
    
    override open func editingRect(forBounds bounds: CGRect) -> CGRect {
        return bounds.inset(by: textPadding)
    }
    

devam ediyor, şimdi soldaki resmi yapmalı ve hareket ettirmeliyiz:

    override func leftViewRect(forBounds bounds: CGRect) -> CGRect {
        var r = super.leftViewRect(forBounds: bounds)
        r.origin.x += leftPadding
        return r
    }
    
    override func layoutSubviews() {
        super.layoutSubviews()
        setup()
    }
    
    private func setup() {
        if let image = leftImage {
            if leftView != nil { return } // critical!
            
            let im = UIImageView()
            im.contentMode = .scaleAspectFit
            im.image = image
            
            leftViewMode = UITextField.ViewMode.always
            leftView = im
            
        } else {
            leftViewMode = UITextField.ViewMode.never
            leftView = nil
        }
    }
}

Bu, bunu yapmanın en net, en güvenilir yolu gibi görünüyor.


3

Basit bir IBDesignable oluşturdum. Nasıl isterseniz kullanın. UITextField'inizi bu sınıfa onaylatmanız yeterlidir.

import UIKit

@IBDesignable
class RoundTextField : UITextField {
    @IBInspectable var cornerRadius : CGFloat = 0{
        didSet{
            layer.cornerRadius = cornerRadius
            layer.masksToBounds = cornerRadius > 0
        }
    }

    @IBInspectable var borderWidth : CGFloat = 0 {
        didSet{
            layer.borderWidth = borderWidth
        }
    }

    @IBInspectable var borderColor : UIColor? {
        didSet {
            layer.borderColor = borderColor?.cgColor
        }
    }

    @IBInspectable var bgColor : UIColor? {
        didSet {
            backgroundColor = bgColor
        }
    }

    @IBInspectable var leftImage : UIImage? {
        didSet {
            if let image = leftImage{
                leftViewMode = .always
                let imageView = UIImageView(frame: CGRect(x: 20, y: 0, width: 20, height: 20))
                imageView.image = image
                imageView.tintColor = tintColor
                let view = UIView(frame : CGRect(x: 0, y: 0, width: 25, height: 20))
                view.addSubview(imageView)
                leftView = view
            }else {
                leftViewMode = .never
            }

        }
    }

    @IBInspectable var placeholderColor : UIColor? {
        didSet {
            let rawString = attributedPlaceholder?.string != nil ? attributedPlaceholder!.string : ""
            let str = NSAttributedString(string: rawString, attributes: [NSForegroundColorAttributeName : placeholderColor!])
            attributedPlaceholder = str
        }
    }

    override func textRect(forBounds bounds: CGRect) -> CGRect {
        return bounds.insetBy(dx: 50, dy: 5)
    }

    override func editingRect(forBounds bounds: CGRect) -> CGRect {
        return bounds.insetBy(dx: 50, dy: 5)
    }

}

3

görüntü açıklamasını buraya girin
Yer tutucu simgesini ayarlamanın ve dolguyu TextField olarak ayarlamanın başka bir yolu.

let userIcon = UIImage(named: "ImageName") 
setPaddingWithImage(image: userIcon, textField: txtUsername)

func setPaddingWithImage(image: UIImage, textField: UITextField){
    let imageView = UIImageView(image: image)
    imageView.contentMode = .scaleAspectFit
    let view = UIView(frame: CGRect(x: 0, y: 0, width: 60, height: 50))
    imageView.frame = CGRect(x: 13.0, y: 13.0, width: 24.0, height: 24.0)
    //For Setting extra padding other than Icon.
    let seperatorView = UIView(frame: CGRect(x: 50, y: 0, width: 10, height: 50))
    seperatorview.backgroundColor = UIColor(red: 80/255, green: 89/255, blue: 94/255, alpha: 1)
    view.addSubview(seperatorView)
    textField.leftViewMode = .always
    view.addSubview(imageView)
    view.backgroundColor = .darkGray
    textField.leftViewMode = UITextFieldViewMode.always
    textField.leftView = view
}

2

Swift 3.1

extension UITextField
{
    enum Direction
    {
        case Left
        case Right
    }

    func AddImage(direction:Direction,imageName:String,Frame:CGRect,backgroundColor:UIColor)
    {
        let View = UIView(frame: Frame)
        View.backgroundColor = backgroundColor

        let imageView = UIImageView(frame: Frame)
        imageView.image = UIImage(named: imageName)

        View.addSubview(imageView)

        if Direction.Left == direction
        {
            self.leftViewMode = .always
            self.leftView = View
        }
        else
        {
            self.rightViewMode = .always
            self.rightView = View
        }
    }

}

lütfen kullanımı ekleyin ve çerçeve parametresini geçmek için neye ihtiyacım var?
Surya Reddy


1

Bu işlevi genel dosyanızın veya sınıfınızın üzerine koyabilirsiniz, böylece tüm uygulamada ona erişebilirsiniz. Bu prosedürden sonra, uygulamadaki ihtiyacınıza göre bu işlevi çağırabilirsiniz.

        func SetLeftSIDEImage(TextField: UITextField, ImageName: String){

                let leftImageView = UIImageView()
                leftImageView.contentMode = .scaleAspectFit

                let leftView = UIView()

                leftView.frame = CGRect(x: 20, y: 0, width: 30, height: 20)
                leftImageView.frame = CGRect(x: 13, y: 0, width: 15, height: 20)
                TextField.leftViewMode = .always
                TextField.leftView = leftView

                let image = UIImage(named: ImageName)?.withRenderingMode(.alwaysTemplate)
                leftImageView.image = image
                leftImageView.tintColor = UIColor(red: 106/255, green: 79/255, blue: 131/255, alpha: 1.0)
                leftImageView.tintColorDidChange()

                leftView.addSubview(leftImageView)
            }

            SetLeftSIDEImage(TextField: Your_textField, ImageName:YourImageName) // call function

2
StackOverflow'a hoş geldiniz, bu kodla birlikte bazı açıklamalar sunmanın bir yolu var mı? Yalnızca kod içeren yanıtlar, düşük kaliteli oldukları için silinme eğilimindedir. Lütfen yardım bölümünde yanıtlamak için şu kılavuza da göz atın: stackoverflow.com/help/how-to-answer
Graham

0

Neden en kolay yaklaşıma gitmiyorsun? Çoğu durumda harika yazı tipi gibi simgeler eklemek istersiniz ... Sadece yazı tipi harika kitaplığını kullanın ve bir metin alanına simge eklemek şu kadar kolay olacaktır:

myTextField.setLeftViewFAIcon(icon: .FAPlus, leftViewMode: .always, textColor: .red, backgroundColor: .clear, size: nil)

Önce bu hızlı kitaplığı yüklemeniz gerekir: https://github.com/Vaberer/Font-Awesome-Swift


5
Neden yalnızca bir glif elde etmek için tüm kitaplık eklenmeli?

0

Bu, Mark Moeykens'in cevabının değiştirilmiş bir versiyonu olup, resim ve metin arasına ilave dolgu ve birinin ihtiyaç duyması durumunda ayarlanabilir resim boyutu.

Swift 4

    import UIKit

    @IBDesignable
    class TextFieldWithImage: UITextField {

        override func leftViewRect(forBounds bounds: CGRect) -> CGRect {
            return super.leftViewRect(forBounds: bounds)
        }

        @IBInspectable var leftImage: UIImage? {
            didSet {
                updateView()
            }
        }
        @IBInspectable var leftPadding: CGFloat = 0 {
            didSet {
                updateView()
            }
        }
        @IBInspectable var rightPadding: CGFloat = 0 {
            didSet {
                updateView()
            }
        }
        @IBInspectable var imageMaxHeight: CGFloat = 0 {
            didSet {
                updateView()
            }
        }

        @IBInspectable var color: UIColor = UIColor.lightGray {
            didSet {
                updateView()
            }
        }

        func updateView() {
            if let image = leftImage {
                leftViewMode = UITextField.ViewMode.always

                let containerSize = calculateContainerViewSize(for: image)
                let containerView = UIView(frame: CGRect(x: 0, y: 0, width: containerSize.width, height: containerSize.height))

                let imageView = UIImageView(frame: .zero)
                containerView.addSubview(imageView)
                setImageViewConstraints(imageView, in: containerView)

                setImageViewProperties(imageView, image: image)

                leftView = containerView
            } else {
                leftViewMode = UITextField.ViewMode.never
                leftView = nil
            }

            attributedPlaceholder = NSAttributedString(string: placeholder != nil ? placeholder! : "",
                    attributes: [NSAttributedString.Key.foregroundColor: color])
        }

        private func calculateContainerViewSize(for image: UIImage) -> CGSize {
            let imageRatio = image.size.height / image.size.width
            let adjustedImageMaxHeight = imageMaxHeight > self.frame.height ? self.frame.height : imageMaxHeight

            var imageSize = CGSize()
            if image.size.height > adjustedImageMaxHeight {
                imageSize.height = adjustedImageMaxHeight
                imageSize.width = imageSize.height / imageRatio
            }

            let paddingWidth = leftPadding + rightPadding

            let containerSize = CGSize(width: imageSize.width + paddingWidth, height: imageSize.height)
            return containerSize
        }

        private func setImageViewConstraints(_ imageView: UIImageView, in containerView: UIView) {
            imageView.translatesAutoresizingMaskIntoConstraints = false
            imageView.topAnchor.constraint(equalTo: containerView.topAnchor).isActive = true
            imageView.bottomAnchor.constraint(equalTo: containerView.bottomAnchor).isActive = true
            imageView.trailingAnchor.constraint(equalTo: containerView.trailingAnchor, constant: -rightPadding).isActive = true
            imageView.leadingAnchor.constraint(equalTo: containerView.leadingAnchor, constant: leftPadding).isActive = true
        }

        private func setImageViewProperties(_ imageView: UIImageView, image: UIImage) {
            imageView.contentMode = .scaleAspectFit
            imageView.image = image
            imageView.tintColor = color
        }
    }

0

Swift 5

@Markus'a benzer, ancak Swift 5'te :

emailTextField.leftViewMode = UITextField.ViewMode.always
emailTextField.leftViewMode = .always

0

SwiftUI

RoundedRectangle(cornerRadius: 50)
                .frame(height: 40)
                .colorInvert() // sets the background white
            .padding()
            .shadow(radius: 12) // adds shadow to the rectangle
                .overlay(
                    HStack(spacing: 20){

                        Image(systemName: "person")
                            .resizable()
                            .aspectRatio(contentMode: .fit)

                        TextField("Username ", text: $username)
                            .font(Font.custom("Arial", size: 25))


                            .font(.title)
                    }
                    .padding()
                    .padding()
                )

Sonuçlar


0

Swift4'teki uzantıyı kullanarak, TextField'e padding ile görüntüyü kolayca sağa veya sola yerleştirebiliriz.

extension UITextField {

    //MARK:- Set Image on the right of text fields

  func setupRightImage(imageName:String){
    let imageView = UIImageView(frame: CGRect(x: 10, y: 10, width: 20, height: 20))
    imageView.image = UIImage(named: imageName)
    let imageContainerView: UIView = UIView(frame: CGRect(x: 0, y: 0, width: 55, height: 40))
    imageContainerView.addSubview(imageView)
    rightView = imageContainerView
    rightViewMode = .always
    self.tintColor = .lightGray
}

 //MARK:- Set Image on left of text fields

    func setupLeftImage(imageName:String){
       let imageView = UIImageView(frame: CGRect(x: 10, y: 10, width: 20, height: 20))
       imageView.image = UIImage(named: imageName)
       let imageContainerView: UIView = UIView(frame: CGRect(x: 0, y: 0, width: 55, height: 40))
       imageContainerView.addSubview(imageView)
       leftView = imageContainerView
       leftViewMode = .always
       self.tintColor = .lightGray
     }

  }

Soldaki görüntü ayarında olduğu gibi kodu kullanın: -

   self.password_text_field.setupLeftImage(imageName: "unlock")

Çıktı :)

görüntü açıklamasını buraya girin

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.