0

Interface Builder에서 다음 방법을 사용하는 방법을 알고 있습니다.프로그래밍 방식으로 TextField 키보드 닫기

-(void)dismissKeyboard 
{ 
    [testTextField resignFirstResponder]; 
} 

이렇게하면 키보드 외부 영역을 터치하거나 "돌아 가기"를 누르면 키보드가 닫힙니다.

하지만 코드로 모든 것을 만드는 법을 모르겠습니다. 고마워, 가르쳐주세요.

여기 여기 .H

#import <UIKit/UIKit.h> 

@interface SecondViewController : UIViewController 
{ 
    UITextField *testTextField; 
} 

@property (nonatomic,retain) UITextField *testTextField; 
@end 

의하는 .m

#import "SecondViewController.h" 
@implementation SecondViewController 
@synthesize testTextField; 

- (void)viewDidLoad 
{ 
    [super viewDidLoad];  

    UITextField *tempTextField = [[UITextField alloc] init]; 
    self.testTextField = tempTextField; 
    testTextField.frame = CGRectMake(100, 150, 200, 30); 
    testTextField.placeholder = @"Test"; 
    testTextField.backgroundColor = [UIColor whiteColor]; 
    testTextField.textColor = [UIColor blackColor]; 
    [self.view addSubview:testTextField]; 

} 
+0

있는 viewDidLoad에서이 코드를 키보드를 사임 .. '[tempTextField setDelegate : 자기]' – DefenestrationDay

+0

@DefenestrationDay 당신의 답변이 맞습니다! – Shinigamae

답변

0

이 헤더에 UITextFieldDelegate을 추가하고이 대리자 메서드를 구현의 :

textFieldShouldEndEditing: 

방법에서 첫 번째 응답을 사임.

3

사용 당신은 대리자를 설정하지 않은

UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyboard)]; 
[self.view addGestureRecognizer:gestureRecognizer]; 
    } 

- (void) hideKeyboard 
    { 
[textfieldname1 resignFirstResponder]; 
    [textfieldname2 resignFirstResponder]; 
    } 
관련 문제