2014-04-11 2 views
4

키보드에 패닝 동작을 추가하려면 DAKeyboardControl을 사용하고 있습니다. 키보드를 닫기위한 패닝 동작을 위해 (수정 후) 잘 동작합니다.UITableView를 스크롤하면서 키보드를 당겨서 tableView와 함께 스크롤하십시오.

UITableView 끝 부분에서 아래쪽으로 스크롤 (손가락 방향으로 위로 움직이기)하면 키보드를 어떻게 나타나게 할 수 있습니까? 더 구체적으로, 페이스 북 메시지 앱과 비슷한 동작을 찾고 있는데, 키보드를 스크롤하면 팬이 나타나고 으로 테이블을 스크롤합니다.

편집 : 내가 원하는 것에 대해 명확하지 않은 것 같습니다. 키보드 을 스크롤 뷰 (UITableView)와 함께에 따라 이동하고 싶습니다. 다음 이미지에서 나는 키보드 을 따라 테이블을 따라 있습니다. 테이블은 이미 바닥으로 스크롤되어 있으며 더 아래로 스크롤하려고하면 키보드가 나타나기 시작합니다. 그 사이에 내 손가락이 탁자 가운데에 있습니다.

enter image description here

답변

8

이 효과는 스크롤 뷰의 keyboardDismissModeUIScrollViewKeyboardDismissModeInteractive으로 설정하고 scrollViewDidScroll:[textField becomeFirstResponder];으로 설정하여 얻을 수 있습니다. 스크롤의 중간에 있기 때문에 키보드는 keyboardDismissMode 속성을 존중하며 대화식으로 나타납니다. DAKeyboardControl을 삭제하십시오. 구식이야.

+0

나는 이것을 의심했지만 실제로 시도하지는 않았다. 한가지 문제 : DAKeyboardControl은 터치가 키보드 위의 textView에 도달하면 이동 제스처를 시작하는 데 사용하는'keyboardTriggerOffset'을 가지고 있습니다. 'keyboardDismissMode'로 비슷한 값을 설정할 수있는 방법이 있습니까? – n00bProgrammer

+0

텍스트보기는 부속보기로해야합니다. 그런 다음,'keyboardDismissMode'는 부속 뷰를 고려합니다. –

+0

작동하지 않습니다. 키보드는 정상적인 커브와 함께 나타나며 스크롤 효과는 아닙니다. – n00bProgrammer

0

',

- (void)scrollViewDidScroll:(UIScrollView *)sender 
{ 
    if (self.lastContentOffset > scrollView.contentOffset.y) 
    { 
     [textField becomeFirstResponder]; 
    } 
    else if (self.lastContentOffset < scrollView.contentOffset.y) 
    { 
     [textField resignFirstResponder]; 
    } 
    self.lastContentOffset = scrollView.contentOffset.y; 

} 

희망이 트릭을 할 것입니다 ... 천국을 ... .H 파일에

@property (nonatomic, assign) CGFloat lastContentOffset 

을이를 추가하고하는 .m 파일이 추가 테스트를 거쳤습니다 ...

0

UITextView와 같은 요소가 필요합니다. croll (예 : UIScrollview 대리자 메서드 중 하나 사용) 일단 스크롤되면 textView에서 becomeFirstResponder를 호출하십시오.

관련 문제