iPhone 시뮬레이터에서 키보드를 제거하는 방법
문제
iPhone 앱에 하나의 텍스트 항목 상자가 있습니다. 시뮬레이터에서 터치하면 키보드가 나타납니다. 그러나 그것을 제거 할 방법이 없습니다. 다른 웹 페이지는 왜 작동 해야하는지 설명하지 않고 솔루션을 제공하며 나에게 효과가 없습니다. 하나는 텍스트 상자의 UIView를 위임 한 다음 객체에서 사임 파이어 스피터를 호출하지만 결코 호출되지 않습니다. 제안이 있습니까? 아무도 실제로 무슨 일이 일어나고 있는지 설명 할 수 있습니까? 디자인 패러다임이 무엇인지 알면 스스로 알아낼 수 있습니다 ...
어쩌면 "go"버튼을 넣어서 텍스트 필드에서 초점을 맞출 수있는 것이 있습니까?
해결책
이를 수행하는 한 가지 방법은 개체를 텍스트 필드의 대의원으로 설정하고 구현하는 것입니다
- (BOOL)textFieldShouldReturn:(UITextField *)textField
당신이 전화하는 곳 [textField resignFirstResponder]
이렇게하면 키보드가 리턴/GO/완료 버튼을 누르면 키보드가 사라집니다 (오른쪽 하단 키보드 키를 설정하든).
참조 uitextfielddelegate 자세한 내용은 참조하십시오.
다른 팁
키보드를 기각하려면 Textfield Delegate를 사용할 수 있습니다.
이것을 사용하려면 다음 단계를 따르십시오 ...
1. viewController에서.시간 다음과 같은 대의원 선언을 추가하십시오.
@interface ViewController : UIViewController <UITextFieldDelegate>
{
}
2. ViewController에서.중 이 방법을 호출하십시오. - (BOOL)textFieldShouldReturn:(UITextField *)textField
3. 다음과 같은 코드를 작성하십시오. - (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
4. 마지막 단계는 Textfield의 대의원을 설정하는 것입니다. - (void)viewDidLoad {
[super viewDidLoad];
self.textField.delegate = self;
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField
반환 버튼을 누르면 대의원에서 호출됩니다.
당신은 전화하고 싶습니다 [textField resignFirstResponder]
그런 다음 돌아옵니다 YES
. 그것은 트릭을 수행해야합니다. 또한 대의원이 설정되어 있는지 확인하십시오. 의심스러운 경우 중단 점을 추가하십시오 NSLog
그리고 확인하십시오.