在使用带范围栏的uisearchbar时,范围栏的色调颜色在iOS 4.3中没有更新。在剩余的iOS版本中它完美运行。我在这里显示了该示例的屏幕截图。有任何想法可以解决这个问题。{{ 0}}
答案 0 :(得分: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
答案 1 :(得分:1)
如果我没记错的话,就无法改变范围栏的色调。一种解决方案是搜索搜索栏的所有子视图并找到范围栏对象并尝试修改其背景。但这可能会导致您修改私有财产,因此可能无法接受。我试着这样做,但我放弃了它,不知道为什么。
其他不那么干净的解决方案是自己实现范围栏并将其作为子视图添加到搜索栏并阻止原始范围栏。仅适用于iOS 4.3或更低版本。
答案 2 :(得分:1)
更改色调颜色以更改范围栏的颜色。注意BarTintColor是不同的 - 这将改变搜索栏的颜色。