2014-07-18 2 views
1

UISearchbar보기의 기본 회색 영역이 있습니다. 아래로 스크롤하는 동안 회색 영역을 볼 수 있습니다. 회색 영역에 backgroundColor을 설정해야합니다.검색 창의 범위에 대한 배경색 설정

나는 UISearchBarUITableView 헤더에 추가했습니다. UITableView에는 새로 고침 컨트롤이 있습니다. 이제 문제는 내가보기 싫은 새로 고침 컨트롤을 당길 때입니다. 새로 고침 제어가 테이블보기 (흰색)의 배경을 차지하므로검색보기 기본값이 backgroundColor (회색)이됩니다.

UISearchbar에 대해 backgroundColor을 설정하면 UISearchBar의 범위가 아닌 UISearchBar 범위에만 적용됩니다. 그 결과로 회색 영역이 어떤 뷰에 속하는지 여부를 생각하고 있습니다. 나는 여분의 견해가 없다고 확신한다. 색상을 tableview, refresh view, UISearchBarself.view으로 설정했지만 회색 영역에주의하십시오.

감사, 회색 영역이 배치된다

+0

[SearchItem setBackgroundColor [UIColor redColor]; –

+0

@KiritModi, 내가 검색 창에 대한 배경을 설정할 경우 언급 한 대로만 범위가 아닌보기 주위에 적용됩니다. – selva

+0

@All, 아래의 라인은 내 문제를 해결했지만, 아무 생각이 없다. :) [tableview setBackgroundView : [UIImageView new]]; – selva

답변

0

searchbar 내부 view를 추가합니다. 이름이 searchBarView이거나 좋아하는 것입니다.

self.scrollView.searchBarView.backgroundColor = [UIColor yourcolor]; 

트릭

+0

답장을 보내 주셔서 감사합니다! 나는 어떤 scrollview도 추가하지 않았다. scroll은 기본 tableview scroll을 의미한다. – selva

+0

내부에 다른 뷰를 추가하고 CGRect를 동적으로 배치하거나 스토리 보드를 통해 정적으로 배치 한 다음 위의 작업을 수행하십시오. 그리고 ur 문제를 해결 한 경우 대답 옆에 표시하십시오 :) thanks –

0
을해야
searchbar = [[UISearchBar alloc]initWithFrame:CGRectMake(27, -5, 143, 44)]; 
     searchbar.tag = indexPath.row+1; 
     searchbar.delegate = self; 
     searchbar.backgroundColor = [UIColor clearColor]; 
     if (IS_IOS_7) { 
      [searchbar setBarTintColor:[UIColor clearColor]]; 
     }else{ 
      [[ [searchbar subviews] objectAtIndex:0] removeFromSuperview]; 
     }