2017-02-27 3 views
0

SO habe ich ein Textfeld, das im Grunde JVFloatLabeledTextField für Fließtexte ist und funktioniert bei der Überprüfung, ob der Benutzername verfügbar ist. Wenn der Webservice ein Antwortobjekt zurückgibt, dass der Benutzername bereits existiert, setzt die Textfelder rechts ein rotes Alarmbild, wenn der Nutzername verfügbar ist, dann wird der rechte Bildausschnitt auf etwas grün gesetzt. Nun wird das Bild etwas außerhalb der Grenzen gesetzt . Ich habe alles versucht .. Beigefügt hiermit ist die Momentaufnahme, und hier ist der Code:UITextField RightView Bild geht außerhalb der Grenzen

usernameTextField.rightViewMode = UITextFieldViewMode.always 
    let imageView = UIImageView.init(frame: CGRect(x: 0, y: 0, width: 20, height: 20)) 

    var imageName:String = "" 

    if jsonReturned["errorCode"] == "Success" { 
     imageName = "isAcceptedIcon" 
    } else { 
     imageName = "isRejectedIcon" 
    } 

    let image = UIImage(named: imageName) 
    imageView.image = image 
    usernameTextField.rightView = imageView 

Jede Hilfe wird sehr geschätzt. Ich möchte das Bild etwas nach links verschieben. Danke im Voraus.

enter image description here

+0

try Einstellung Imageview-Modus hilft – noob

+0

@noob seine gleich zu scaleAspectFit .. keinerlei Auswirkungen !! –

Antwort

0

SO löste ich es irgendwie auf meinem eigenen. Seine Art von sehr einfach infact. Anstatt auf die rightView, die Bildansicht zu ernennen. Ich musste RightViews Rahmen und dann addSubview(imageView) darauf einstellen. Hier ist der Code und das neue beigefügte Bild:

userEmailTextField.rightViewMode = UITextFieldViewMode.always 
    let imageView = UIImageView.init(frame: CGRect(x: 0, y: 0, width: 20, height: 20)) 

    usernameTextField.rightView?.frame = AppManager.shared.CGRectMake(0, 0, 25, 20) 

    var imageName:String = "" 
    if jsonReturned["errorCode"] == "Success" { 
     imageName = "isAcceptedIcon" 
    } else { 
     imageName = "isRejectedIcon" 
    } 

    let image = UIImage(named: imageName) 
    imageView.image = image 
    imageView.contentMode = .scaleAspectFit 

    usernameTextField.rightView?.addSubview(imageView) 

Also ja das war eine enorme Lösung! Hoffe, dass dies jemand anderes zu :)

enter image description here

Verwandte Themen