如何解雇多个文本字段的所有键盘?

时间:2014-03-27 01:21:30

标签: ios objective-c uitextfield uitextfielddelegate resignfirstresponder

我在一个视图控制器中有三个文本字段,当我执行解除所有三个文本字段的键盘的方法时,视图控制器不会出现。

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.namesuite.delegate = self;
    self.createpassword.delegate = self;
    self.createname.delegate = self;
    // Do any additional setup after loading the view.
}

我也有textFieldShouldReturn功能。

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

这是我的按钮功能,可以将我发送到包含文本字段的视图控制器。

- (IBAction)createaccount:(id)sender
{
    [self performSegueWithIdentifier:@"thirdsegue" sender:sender];
}

3 个答案:

答案 0 :(得分:4)

这会有所帮助。试试这个:

[self.view endEditing:YES];

希望这会有所帮助.. :)

答案 1 :(得分:1)

你应该尝试this control (TPKeyboardAvoiding)并获得辞职和滚动问题。它是一个通用的解决方案。

答案 2 :(得分:0)

尝试:

-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [self.namesuite resignFirstResponder];
    [self.createpassword resignFirstResponder];
    [self.createname resignFirstResponder];

    return YES;
}

-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
    if (textField == self.namesuite)
    {
         [self.namesuite resignFirstResponder];
    }
    else if (textField == self.createpassword)
    {
         [self.createpassword resignFirstResponder];
    }
    else if (textField == self.createname)
    {
         [self.createname resignFirstResponder];
    }

return YES;
}