2012-03-28 14 views

Respuesta

21

Debe crear su propio UIButton (con imagen, necesitará un png del botón que desee), ejecútelo y coloque este botón en la parte derecha de su UITextField.

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; 

usted pueda necesitar para refinar alineaciones utilizando (estos son valores de ejemplo):

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

A continuación, tendrá que implementar el método - (void) doClear (ID) del remitente; eso borrará su campo de texto.

+0

¡Muchas gracias! ¡Lo probaría! – sergiocg90

+1

si necesita que se muestre el botón "al editar", debe cambiar el 'rightViewMode' a' UITextFieldViewModeWhileEditing' –

+1

Hice un botón de muestra clara que puede usar. https://www.chillysky.com/apps/Clear.png –

Cuestiones relacionadas