2011-09-30 113 views
0

我确实有三个TextField如何关闭键盘?

对于名称电话和电子邮件。

在选择每一个文本框的键盘就会出现

-(void)createdTextField{ 
    phoneField = [[UITextField alloc]initWithFrame:CGRectMake(225, 306, 90, 31)]; 
    [phoneField setPlaceholder:REQUIRED]; 
    [phoneField setBorderStyle:UITextBorderStyleRoundedRect]; 
    phoneField.delegate = self; 
    phoneField.contentVerticalAlignment=UIControlContentVerticalAlignmentCenter; 
    phoneField.keyboardType = UIKeyboardTypeNumberPad; 
    [phoneField setTag:10]; 
    [self.view addSubview:phoneField]; 

    [self.view addSubview:phoneField]; 
    nextPhoneField = [[UITextField alloc]initWithFrame:CGRectMake(325, 306, 142, 31)]; 
    [nextPhoneField setBorderStyle:UITextBorderStyleRoundedRect]; 
    nextPhoneField.contentVerticalAlignment=UIControlContentVerticalAlignmentCenter; 
    nextPhoneField.delegate = self; 
    nextPhoneField.keyboardType = UIKeyboardTypeNumberPad; 
    [nextPhoneField setTag:11]; 
    [self.view addSubview:nextPhoneField]; 



    nameField = [[UITextField alloc] initWithFrame:CGRectMake(225, 265, 242, 31)]; 
    [nameField setPlaceholder:REQUIRED]; 
    [nameField setBorderStyle:UITextBorderStyleRoundedRect]; 
    nameField.contentVerticalAlignment=UIControlContentVerticalAlignmentCenter; 
// [nameField setAutocorrectionType:UITextAutocorrectionTypeNo]; 
    [nameField setTag:12]; 
    [self.view addSubview:nameField]; 

    eMailField = [[UITextField alloc]initWithFrame:CGRectMake(225, 347, 242, 31)]; 
    [eMailField setPlaceholder:REQUIRED]; 
    [eMailField setBorderStyle:UITextBorderStyleRoundedRect]; 
    eMailField.contentVerticalAlignment=UIControlContentVerticalAlignmentCenter; 
    eMailField.keyboardType = UIKeyboardTypeEmailAddress; 
    [eMailField setAutocorrectionType:UITextAutocorrectionTypeNo]; 
    [eMailField setTag:13]; 

    [self.view addSubview:eMailField]; 

} 

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
[textField resignFirstResponder]; 
return NO; 
} 

@When在所有四个文本框,我需要取消键盘打字返回按钮时关闭键盘。

它只发生在手机没有剩余的TextField。

+0

[编辑UITextField时如何忽略键盘](http://stackoverflow.com/questions/274319/how-do-you-dismiss-the-keyboard-when-editing-a-uitextfield ) –

+0

对于手机TextField它是解雇和下一个TextField其解雇键盘和其余的东西它不解除键盘 – user891268

回答

1

我看到了你粘贴的代码。 最后两个文本字段没有代表。 我认为这是原因。

+0

Ooops Yeap你是对的。林正 – user891268

-1
after creation of urEachTextField 


    urEachTextField = [[UITextField alloc] initWithFrame:CGRectMake(225, 265, 242, 31)]; 
    urEachTextField.delegate=self; 

head file .h 

    @interface urViewController : UIViewController<UITextFieldDelegate> 
+0

其已包括UITextFieldDelegate仍然保存问题 – user891268

+0

我说每个textfield.see我的代码 –

+0

@ user891268我也指定回答,但是你做得不好。 –

0

你想隐藏对于给定的领域键盘任何时候只是做:

[myField resignFirstResponder]; 

可以明显地MyField的是该领域目前仍然有效。

0

如何辞退的UITextField键盘

[textField resignFirstResponder]; 

如果您想放弃当用户触摸“返回”按钮,使用(需要设置代理和协议)

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    [textField resignFirstResponder]; 
    return YES; 
}