it-swarm.com.de

Bild zu UITextField in Xcode hinzufügen?

enter image description here

Ich muss das Konzept von dropdown in Xcode implementieren.

Zu diesem Zweck verwende ich eine UIPickerview.

Diese PickerView wird geladen, wenn auf ein Textfeld (bei textFieldDidBeginEditing:) getippt wird.

Frage:

Gibt es eine Möglichkeit, dass ich ein Bild zu TextField hinzufügen kann? 

Das Bild ist wie eine Pfeilmarkierung, durch die der Benutzer erkennen kann, dass eine dropdown angezeigt wird, wenn textfield gedrückt wird. 

65
Honey

UITextField hat eine rightView -Eigenschaft, wenn das Bild so ist- enter image description here Dann können Sie das ImageView-Objekt ganz einfach auf RightView setzen:

UITextField *myTextField = [[UITextField alloc] init];

myTextField.rightViewMode = UITextFieldViewModeAlways;
myTextField.rightView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"downArrow.png"]];
148
Mayur Birari

In Swift:

textField.leftViewMode = UITextFieldViewMode.Always
textField.leftView = UIImageView(image: UIImage(named: "imageName"))
39
King-Wizard

Sie können die UIImageView links von Ihrer UITextField setzen. 

UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(96, 40, 130, 20)];
[textField setLeftViewMode:UITextFieldViewModeAlways];
textField.leftView= [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"searchIccon.png"]];
30
Erhan Demirci

Swift 3.0

txtField.rightViewMode = .always
txtField.rightView = UIImageView(image: UIImage(named: "selectdrop"))

 TextField With DropDown Icon

10
Sourabh Sharma

Verwenden Sie den folgenden Code, um richtige Ränder/Füllungen zwischen Bild und Textfeld hinzuzufügen

Hier ist die Höhe meines TextFields 44 Überprüfen Sie das angehängte Bild als Referenz.

Swift-Version:

emailTF.leftViewMode = .Always
let emailImgContainer = UIView(frame: CGRectMake(emailTF.frame.Origin.x, emailTF.frame.Origin.y, 40.0, 30.0))
let emailImView = UIImageView(frame: CGRectMake(0, 0, 25.0, 25.0))
emailImView.image = UIImage(named: "image1")
emailImView.center = emailImgContainer.center
emailImgContainer.addSubview(emailImView)
emailTF.leftView = emailImgContainer

 enter image description here

5
kishorer747

hey Kumpel Sie wollen Dropdown-Ansicht dann sehen Sie diese benutzerdefinierte Dropdown-Ansicht ..

  1. http://code.google.com/p/dropdowndemo/downloads/list
  2. http://ameyashetti.wordpress.com/2010/09/26/drop-down-demo/

und für diese Anforderung verwenden Sie diesen Code

UITextField *txtstate =[[UITextField alloc]init]; [txtstate setFrame:CGRectMake(10, 30,170, 30)]; 
txtstate.delegate=self; 

[email protected]"Fruits"; 

txtstate.borderStyle = UITextBorderStyleLine; 

txtstate.background = [UIImage imageNamed:@"dropdownbtn.png"]; 

[txtstate setAutocorrectionType:UITextAutocorrectionTypeNo]; 
[self.view addSubview:txtstate];

und setzen Sie Ihren Textfeld-Randstil auf "none".

3
Paras Joshi

Schritt 1: Fügen Sie diese Klasse Ihrem Projekt hinzu und fügen Sie sie der Klasse textFiled im Identitätsinspektor hinzu.

class MyCustomTextField: UITextField {

    @IBInspectable var inset: CGFloat = 0

    @IBInspectable var leftImage: String = String(){
        didSet{
            leftViewMode = UITextFieldViewMode.Always
            leftView = UIImageView(image: UIImage(named: leftImage))
        }
    }

    override func textRectForBounds(bounds: CGRect) -> CGRect {
        return CGRectInset(bounds, inset, inset)
    }

    override func editingRectForBounds(bounds: CGRect) -> CGRect {
        return textRectForBounds(bounds)
    }

    override func leftViewRectForBounds(bounds: CGRect) -> CGRect {
        return CGRectInset(CGRectMake(0, 2, 40, 40), 10, 10) //Change frame according to your needs
    }
}

Schritt 2: Legen Sie Texteinschübe und linkes Bild aus dem Interface Builder fest.

 enter image description here

Schritt 3: Viel Spaß.

2
Zaid Pathan

UITextField hat die folgende Eigenschaft:

@property(nonatomic, retain) UIImage *background

beispiel:

UITextField *myTextField = [[UITextField alloc] init];
myTextField.background = [UIImage imageNamed:@"myImage.png"];
2
      emailTextField.leftViewMode = .alway
    let emailImgContainer = UIView(frame: CGRect(x: 0, y: 0, width: 30, height: 25))
    let emailImg = UIImageView(frame: CGRect(x: 0, y: 0, width: 25, height: 25))
    emailImg.image = UIImage(named: "SomeIMG")
    emailImgContainer.addSubview(emailImg)
    emailTextField.leftView = emailImgContainer

Bildbeschreibung hier eingeben

0
Td Prashanth