IOS TextFiled 와 TextView 키보드 의 걷 기 및 처리 키보드 가리기
iOS 개발 에서 UITextFiled 와 UITextView 는 흔히 볼 수 있 는 두 가지 컨트롤 입 니 다.이 두 컨트롤 을 설정 한 후 텍스트 입력 영역 을 클릭 하면 시스템 에서 자동 으로 키보드 가 팝 업 됩 니 다.하지만 키 보드 를 어떻게 걷 고 키 보드 를 어디서 걷 는 지,아이 폰 4 에서 키보드 가 팝 업 된 후 입력 상 자 를 가 리 는 방법 은 무엇 입 니까?
이 글 은 모 두 를 이 끌 고 해결 할 것 이다.
1>다른 공백 영역 을 클릭 하여 키 보드 를 접는다
2>키보드 오른쪽 하단 버튼 을 눌 러 키보드 접 기
3>키보드 차단 문제 처리
1.다른 공백 구역 을 클릭 하여 키 보드 를 접 습 니 다.
- (void)viewDidLoad {
[super viewDidLoad];
[self setUpForDismissKeyboard];
}
#pragma mark -
- (void)setUpForDismissKeyboard {
NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];
UITapGestureRecognizer *singleTapGR =
[[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(tapAnywhereToDismissKeyboard:)];
NSOperationQueue *mainQuene =[NSOperationQueue mainQueue];
[nc addObserverForName:UIKeyboardWillShowNotification
object:nil
queue:mainQuene
usingBlock:^(NSNotification *note){
[self.view addGestureRecognizer:singleTapGR];
}];
[nc addObserverForName:UIKeyboardWillHideNotification
object:nil
queue:mainQuene
usingBlock:^(NSNotification *note){
[self.view removeGestureRecognizer:singleTapGR];
}];
}
- (void)tapAnywhereToDismissKeyboard:(UIGestureRecognizer *)gestureRecognizer {
// method self.view subview first responder resign
[self.view endEditing:YES];
}
둘째,키보드 오른쪽 하단 의 키 를 누 르 면 키 보드 를 접 습 니 다.
#pragma mark - TextView
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
if ([text isEqualToString:@"
"]) {
[self.workLogTextView resignFirstResponder];
return NO;
}
return YES;
}
메모:textView/textFiled 의 대 리 를 지 켜 야 합 니 다.코드 를 바 꾸 는 것 은 textView 에이전트 방법 입 니 다.실제 사용 하 는 것 이 textFiled 라면 textFiled 의 이런 방법 만 사용 하면 됩 니 다.3.키보드 차단 문제 처리
#pragma mark
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView {
if (self.userInfo.isPhone4) {
CGFloat offset_y = 0.f;
if (textView.tag == CALL_CONTENT_TEXTFIRLD) {
offset_y = 100.f;
}
CGPoint point = self.BackScrollView.contentOffset;
point = CGPointMake(point.x, offset_y);
[UIView animateWithDuration:0.25 animations:^{
self.BackScrollView.contentOffset = point;
}];
}
return YES;
}
- (BOOL)textViewShouldEndEditing:(UITextView *)textView{
if (self.userInfo.isPhone4) {
CGFloat offset_y = 0.f;
if (textView.tag == CALL_CONTENT_TEXTFIRLD) {
offset_y = 100.f;
}
CGPoint point = self.BackScrollView.contentOffset;
point = CGPointMake(point.x, 0);
[UIView animateWithDuration:0.25 animations:^{
self.BackScrollView.contentOffset = point;
}];
}
return YES;
}
메모:UIScrollView Delegate 와 textView/textFiled 의 대 리 를 지 켜 야 합 니 다.이 페이지 의 부모 보기 가 UIScrollView 여야 키보드 가 꺼 질 때 페이지 가 위로 이동 하고 키 보드 를 접 을 때 페이지 가 아래로 이동 할 수 있 습 니 다.코드 에 있 는 self.Back ScrollView 는 해당 하 는 부모 보기 입 니 다.사용 할 때 교체 하 십시오.읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
IOS에서 ReplayKit 및 RTC 사용 방법응용된 소리와 아나운서의 소리를 포함한다.이 두 가지 수요를 감안하여 우리는 스크린 공유를 하는 생방송에 필요한 미디어 흐름을 간단하게 분석할 수 있다. 만약 우리가 Audio App과 Audio Mic를 두 개의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.