我在应用程序中创建了许多文本字段,我希望它们在用户完成编辑后关闭键盘。我知道如果textField是由IB创建的,并且可以使用IBAction,但是如果textField是这样创建的,那该怎么办,

int top = 60;
for(NSUInteger i=0; i< [kArray count]; i++){
        UITextField *kField = [kArray objectAtIndex:i];
        kField.frame = CGRectMake(130, top, 60, 30);
        kField.borderStyle = UITextBorderStyleRoundedRect;
        kField.autocorrectionType = UITextAutocorrectionTypeNo;
        kField.returnKeyType = UIReturnKeyDone;
        kField.keyboardType = UIKeyboardTypeNumbersAndPunctuation;

        [scrollView addSubview:kField];
        top += 50;
    }


当用户按下完成按钮时,如何关闭键盘?

最佳答案

使用UITextFieldDelegate方法:

#pragma mark UITextFieldDelegate methods

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


请记住要像这样使您的班级符合委托人:

@interface MyViewController : UIViewController <UITextFieldDelegate>

关于iphone - 以编程方式触发didEndOnExit,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8842637/

10-11 19:27