내 응용 프로그램에 UISearchBar가 있습니다. 테이블 머리글보기로 설정했습니다. 텍스트 편집을 시작할 때 내 viewController 하위 뷰로 검색 막대를 설정하려고합니다. 검색 바 viewController의보기에 올바르게 추가하지만 프레임이 잘못되었습니다. 이건 내 코드입니다 :UIsearchBar. 프레임을 변경할 수 없습니다.
- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar
{
UITableView *tableView = ((UITableView *)[((SectionViewController *)sharedInstance.currentViewController).view viewWithTag:1111]);
[tableView reloadData];
if([searchBar.text isEqualToString:@"Filter..."])
{
searchBar.text = @"";
for(UIView *subView in searchBar.subviews){
if([subView isKindOfClass:UITextField.class]){
[(UITextField*)subView setTextColor:[UIColor blackColor]];
}
}
}
[((SectionViewController *)sharedInstance.currentViewController).view addSubview:searchBar];
[searchBar setFrame:CGRectMake(0, 20, 320, 38)];
[((SectionViewController *)sharedInstance.currentViewController).navigationController setNavigationBarHidden:YES animated:YES];
[searchBar setShowsCancelButton:YES animated:YES];
}
I 프레임 (0, 20, 320, 38)을 설정하려면,하지만 난 (0, 0, 320, 38)을 얻는다. 또한 searchBar의 초기 프레임은 (0, 0, 320. 38)입니다. 제발 왜 이걸 가져 오라고 말해줘요?
"UISearchDisplayController"를 사용하지 않으려는 경우 UITextField를 사용하여 시도해보십시오. UISerchBar로 정확하게 보이게 할 수 있으며 더 맞춤 설정할 수 있습니다. – Camo