Gracias, Blaenk, estaba tratando de averiguar cómo hacer esto y no me di cuenta de que podía poner un botón en el fondo, buen truco. Aquí está mi contribución (nuevo en este sitio y Cocoa Touch por lo que no puede ser el código más robusto nunca, pero que está funcionando hasta ahora ...):
que llamo este método desde el evento touchUpInside
en mi UIButton:
-(void)closeKeyboard:(id)sender {
UIView *theFirstResponder = [self findFirstResponder];
if (theFirstResponder) {
[theFirstResponder resignFirstResponder];
}
}
Cuando este bucle encuentra el firstResponder:
- (UIView *)findFirstResponder {
UIView *firstResponderView = nil;
for (UIView *view in [self entryFields]) {
if ([view isFirstResponder]) {
firstResponderView = view;
break;
}
}
return firstResponderView;
}
que depende de cada uno de los UITextField
controles en la vista que tiene una etiqueta asignado a ellos (de nuevo, puede hacer tha t en Interface Builder).
Mis dos centavos de todos modos, ¡aunque será mejor que devuelva algo!
Pero dónde llamar este resignFirstResponder . ¿Cómo saber que el usuario tocó la UIView? – nbojja
He editado la publicación para incluir un ejemplo en touchesBegan. – PCheese
Oye, gracias por tu ayuda ... funcionó bien con UIView. Pero tengo otro escenario donde tengo cuadros de texto en UITableView. en este caso su código no está funcionando.Soy muy nuevo en el desarrollo de iPhone, así que por favor ...... – nbojja