我想在我的UISearchBar下面添加范围按钮。但是,我无法更改内置示波器按钮的色调颜色。
相反,我在tableViewHeader中添加了一个UISegmentedControl。这工作得很好,但是仅当我不输入UISearchbar时才显示。不太方便。
当我在UISearchBar中输入文本时,表和分段控件被“不显示结果”半不透明的黑色层隐藏。一旦开始显示结果,我的分段控件就会完全消失,只有显示结果的单元格才会显示。
我想在文本输入搜索栏的过程中使分段控件可单击。
您知道采取以下任何方式吗?
谢谢
最佳答案
尝试
@implementation UISearchBar (subviewAccess)
- (UISegmentedControl *)scopeBar {
for (UIView *v in [self subviews]) {
if ([v isKindOfClass:[UISegmentedControl class]])
return v;
}
return nil;
}
@结束
获取所需的分段控件,然后从那里进行着色
(当前位于索引0,但这绝对不确定)
没有使用“ private API”,因此Apple应该可以使用,
但请注意,如果他们更改了视图布局(不太可能),这可能会中断,
这会导致您的色彩消失的副作用,您应该
通过标准搜索栏API访问其其余状态
关于ios - 将UISegmentedControl添加到UISearchBar而不是范围按钮,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6243772/