2010-07-03 2 views
2

사용자의 주소록을 가져 와서 새로운 PeoplePicker 컨트롤러를 사용하여 특정 용어와 일치하는 결과 만 표시하도록합니다. UIPeoplePickerNavigationController에는 검색 막대와 검색보기가 포함되어 있습니다. 꽤 표준적인 물건처럼 보입니다. 전에 사용 해보지 않았습니다.ABPeoplePickerNavigationController 프로그래밍 방식 검색?

방금 ​​PeoplePicker를 모달로 표시 한 UIViewController 하위 클래스에서 프로그래밍 방식으로 어떻게 얻을 수 있습니까?

여기까지 제가 시도한 내용입니다. 말할 필요도없이 작동하지 않습니다.

ABPeoplePickerNavigationController *pick = [[ABPeoplePickerNavigationController alloc] init]; 
pick.searchDisplayController.searchBar.text = @"jim"; 
[self presentModalViewController:pick animated:YES]; 
[pick release]; 

편집이 : 더 명확하기 위해, 나는 ABPeoplePicker을 가지고 싶어하지만, 이미 다른 응용 프로그램에서에서 온 검색어와 "중간 검색". 사용자가 해당 검색을 취소하고 자체 검색을 실행하려는 경우 괜찮습니다. 그러나 먼저 내 자신의 용어로 searchviewcontroller를 미리로드하려고합니다.

답변

0

ABPeoplePickerNavigationControllerDelegate를 선언했는지 여부를 확인하십시오.

다음 앱을 실행하십시오.

[self presentViewController:pick animated:YES completion:^{ 
    UISearchBar *bar = pick.visibleViewController.searchDisplayController.searchBar; 
    [bar becomeFirstResponder]; 
    [bar setText:@"jim"]; 
    [bar resignFirstResponder]; 
}]; 

순간 지연이있다 : 나는 당신에게

사람이 아직 이것에 대해 궁금, 내가 프리젠 테이션 완료 블록에서 검색 창의 첫 번째로 반응 상태를 조작하여 솔루션에 도달 한 것 경우
1

을 도움이되기를 바랍니다 검색 결과를 가져 오기 전에이 방법이 ABPeoplePickerNavigationController에서 프로그래밍 방식 검색을 수행하는 데 가장 좋은 방법입니다.