2012-03-28 20 views

Antwort

21

Sie sollten Ihr eigenes UIButton (mit Bild, Sie benötigen einen Png Ihrer gewünschten Schaltfläche) erstellen, es instanziieren und diese Schaltfläche in der rechten Ansicht Ihres UITextFields platzieren.

CGFloat myWidth = 26.0f; 
CGFloat myHeight = 30.0f; 
UIButton *myButton = [[UIButton alloc] initWithFrame:CGRectMake(0.0f, 0.0f, myWidth, myHeight)]; 
[myButton setImage:[UIImage imageNamed:@"myButtonImage"] forState:UIControlStateNormal]; 
[myButton setImage:[UIImage imageNamed:@"myButtonImage"] forState:UIControlStateHighlighted]; 

[myButton addTarget:self action:@selector(doClear:) forControlEvents:UIControlEventTouchUpInside]; 

myTextField.rightView = myButton; 
myTextField.rightViewMode = UITextFieldViewModeUnlessEditing; 

Sie könnten brauchen Ausrichtungen verfeinern verwenden (diese sind Beispielwerte):

myButton.imageEdgeInsets = UIEdgeInsetsMake(0, -10, 0, 0); 

Dann müssen Sie Methode implementieren - (void) doClear (id) sender; Das wird dein Textfeld löschen.

+0

Vielen Dank! Ich würde es versuchen! – sergiocg90

+1

Wenn Sie die Schaltfläche "während der Bearbeitung" benötigen, müssen Sie den 'rightViewMode' in' UITextFieldViewModeWhileEditing' ändern. –

+1

Ich habe eine Beispiel-Schaltfläche zum Löschen erstellt, die Sie verwenden können. https://www.chillysky.com/apps/Clear.png –

Verwandte Themen