2014-09-09 4 views
3

새로 고침하고 검색 (별도)하기 위해 풀다운을 지원하는 tableview가 있습니다. 새로 고침을 위해 풀다운 후 검색 막대를 즉시 클릭하면 어떻게 refreshControl을 숨길 수 있습니까?UISearchBar가 활성화되면 UIRefreshControl을 숨기는 방법?

+0

즉,이 같은있는 tableview에없는 (.. 새로 고침 제어가 분리되어, 검색 창에있는 tableview에있다가 현재의 tableview – Bejibun

+0

에서 분리하기 위해선, refreshcontrol보기에서 검색 창을 넣지 마십시오). – Swanson

+0

스토리 보드 또는 일부 UR 코드에서 tableview 하위의 스크린 샷을 만들 수 있습니까? – Bejibun

답변

2

@Bejibun이 (가) this comment을 기반으로 한 답변으로 안내했습니다. tableview의 오프셋을 (0 - refresh_control_height)로 설정하면됩니다.

so .. self.tableView.contentOffset = CGPointMake (0, 0 - self.refreshControl.frame.size.height);

2

내가 지금까지 찾은 최고의 해결책은 검색 창이 활성화되어있는 동안 새로 고침을 완전히 비활성화하는 것입니다.

@property(nonatomic, strong) UIRefreshControl *refreshControl; 
.... 

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar { 
    // Disable refresh control 
    self.refreshControl = self.tableViewController.refreshControl; 
    self.tableViewController.refreshControl = nil; 
    return YES; 
} 

- (void)searchBarTextDidEndEditing:(UISearchBar *)searchBar 
{ 
    //Restore refresh control 
    self.tableViewController.refreshControl = self.refreshControl; 
}