2012-05-02 7 views
1

나는 UISearchBar를 uitableview headerview에 넣었고 viewcontroller viewdidLoad 메서드는 headerview 높이를 0으로 설정하고 검색 창을 숨기고 버튼이 터치 될 때 검색 창을 표시하려고했습니다. uisearchbar를 보여 주지만 searchbar는 tableview의 첫 번째 행을 덮어 씁니다. 오버레이를 피할 수있는 방법이 있습니까?UITableView 헤더보기 크기 조정

답변

3

headerview의 clipsToBounds 속성을 YES로 설정하면됩니다.

+0

아무 일도 없었습니다. 어디에서이 속성을 설정해야합니까? 원래 크기로 복원하기 전에 설정합니다. – taffarel

+0

높이가 0 일 때 이미 설정되어 있어야합니다. 검색 창과 일치하지 않기 때문에 아래의 표보기가 겹쳐집니다. 일반적으로 headerview를 생성 한 직후에이를 설정하지만 높이를 0으로 설정하기 직전에 설정하면됩니다. – Stuart

+0

아니, 어쩌면 내가 잘못한 거니? 여기 내 코드가있다. viewDidLoad 메서드에서 CGRect headerframe = self.tableView.tableHeaderView.frame; [self.searchBar setHidden : YES]; self.tableView.tableHeaderView.clipsToBounds = YES; self.tableView.tableHeaderView.frame = CGRectMake (headerframe.origin.x, headerframe.origin.y, headerframe.size.width, 0); 및 터치 핸들러 [self.searchBar setHidden : NO]; CGRect headerframe = self.tableView.tableHeaderView.frame; self.tableView.tableHeaderView.frame = CGRectMake (headerframe.origin.x, headerframe.origin.y, headerframe.size.width, 44); – taffarel

2

클립을 변경하면 headerView에서 YES로 바뀝니다.

관련 문제