2012-02-06 4 views
2

UITabBar 아래에 중첩 된 컨트롤러에 UITableView이 있습니다.UISearchDisplayController가 텍스트 영역을 터치 할 때 키보드를 표시하지 않습니다.

인터페이스 상호 작용은 인터페이스 작성기에서 지금까지 완성되었으며,보기 전환과 관련하여 프로그래밍 방식으로 수행 된 것은 없습니다.

나는 내 UITableView의 헤더로 UISearchDisplayController을 추가했습니다. 잘 표시되고 텍스트 입력 영역을 탭하면 취소 버튼이 나타나고 검은 색 오버레이가 날아갑니다.

그러나 키보드는 표시되지 않으며 취소 버튼을 누르면 오버레이가 사라지고 취소 버튼 사라지지만 텍스트 입력 영역에 포커스가 유지되고 캐럿이 계속 깜박 거리므로 다시 검색 결과를 다시 표시 할 수는 없습니다. 탭 때 취소 버튼 초점을 잃어버린하지 UISearchBar

  • UISearchDisplayController

    에서 UISearchBar에 텍스트를 편집하기 시작할 때

    1. 키보드가 나타나지 않는 :

      그래서 기본적으로 나는 두 가지 문제가있다.

    내가 뭘 잘못하고 있니?

  • +0

    have 위임자 속성을 설정 했습니까? –

    +0

    드래그 앤드 드롭했습니다. 위임자는 IB에서 포함 된보기 컨트롤러가되도록 할당됩니다. 대표자에게 이러한 증상이 발생하지 않았습니까? –

    답변

    1

    내 탭 막대가있는 .xib 파일에는 UIWindow가 포함되어 있습니다.

    이것은 모든 종류의 광기로 이어지고 결국 인터페이스 작성기로이 작업을 포기하고 코드에서 UITabBar을 구성하여 두 번째 UIWindow를 만들지 않습니다.

    이 문제가 해결되고 UISearchDisplayController가 올바르게 동작합니다.

    0

    체크 UISearchBarDelegate에서이 방법

    - (void)searchBarCancelButtonClicked:(UISearchBar *) searchBar; 
    

    봅니다 불려지고 있는지 여기에 키보드 관련 제거를 할 수 있습니다. 그렇지 않은 경우 UISearchDisplayController을 사용해보십시오. (나는 실제로 기본 viewController를 사용하지 않는다). 또한 대리인이 올바르게 설정되어 있는지 확인하십시오.

    +0

    키보드를 숨기려고하지 않고 텍스트 영역을 탭하면 표시되지 않습니다. –

    관련 문제