2013-01-02 58 views
1

在使用的UISearchBar与范围栏的色调颜色是不是在iOS的更新4.3.In剩余的iOS版本,它正在perfectly.I范围栏显示的是样品here.Any想法截图解决这个请。 enter image description here的UISearchBar scopebar着色颜色问题

+1

你是怎么着色的?以编程方式或IB?我建议张贴您使用的代码,如果可能的话 – lxt

+0

通过IB我已经做到了 –

+0

@SURESHSANKE只是搜索搜索栏的子视图,其中UISeagmentControl,然后改变这个颜色,这是搜索栏 –

回答

2
for (id subview in yourSearchDisplayController.searchBar.subviews) 
{ 
    if([subview isMemberOfClass:[UISegmentedControl class]]) 
    { 
     UISegmentedControl *scopeBar=(UISegmentedControl *) subview; 
     [scopeBar setSegmentedControlStyle:UISegmentedControlStyleBar]; 
     [scopeBar setTintColor: [UIColor redColor]];//you can also set RGB color here 
     //scopeBar.tintColor = [UIColor blackColor];   
    } 
} 

也看到这个链接我的答案修改UISearchBar组件

How to change inside background color of UISearchBar component on iOS

+0

的scopebar连我尝试使用此代码它没有为我工作.iOS 4.3它无法更改范围栏的色彩颜色。 –

+0

现在试试吧,我添加的样式,尝试它可能是它的工作.. –

+0

@SURESHSANKE喜家伙不我改变我的模拟器从5.1到4.3,它的显示不同的颜色我设置reedcolor和它的显示红色花花公子 –

1

如果我没有记错,这是不可能改变的范围栏的色调。一种解决方案可能是搜索搜索栏的所有子视图并找到范围栏对象并尝试修改其背景。但是,这可能会导致您修改私有财产,因此可能无法接受。我正在尝试这样做,但我放弃了它,不知道为什么。

其他不那么干净的解决办法是自己执行范围栏,并将其添加为一个子视图搜索栏,并阻止在原有范围吧。只为iOS 4.3或更低版本做这个。

1

enter image description here

更改色调颜色变化范围栏的颜色。注意BarTintColor不同 - 这将改变搜索栏的颜色。