Ios 删除背景色时,使用UISearchDisplayController删除行UISearchBar
在界面生成器的帮助下,我在我的Ios 删除背景色时,使用UISearchDisplayController删除行UISearchBar,ios,objective-c,uisearchbar,uisearchdisplaycontroller,Ios,Objective C,Uisearchbar,Uisearchdisplaycontroller,在界面生成器的帮助下,我在我的UITableView中添加了一个UISearchBar和UISearchDisplayController。我知道如何设置UISearchBar的背景色,我是这样做的: for (UIView *subview in self.searchBar.subviews) { if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) { [s
UITableView
中添加了一个UISearchBar
和UISearchDisplayController
。我知道如何设置UISearchBar
的背景色,我是这样做的:
for (UIView *subview in self.searchBar.subviews) {
if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) {
[subview removeFromSuperview];
}
}
但你可以看到,有一行,我不明白,如何删除它,与搜索栏滚动:
如果我使用interface builder仅插入一个UISearchbar
,而没有UISearchDisplayController
,则如何删除该行?使用以下命令:
for (UIView *subview in self.searchDisplayController.searchBar.subviews) {
if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) {
[subview removeFromSuperview];
}
}
当我们使用UISearchDisplayController
时,搜索栏与UISearchDisplayController的searchBar属性相关联,可以使用self.searchDisplayController.searchBar
使用以下内容:
for (UIView *subview in self.searchDisplayController.searchBar.subviews) {
if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) {
[subview removeFromSuperview];
}
}
当我们使用
UISearchDisplayController
时,搜索栏与UISearchDisplayController的searchBar属性相关联,可以使用self.searchDisplayController.searchBar
访问。我使用的是不透明度为0%的1px图像
而且它的工作方式完全符合您的要求。我使用的是1px图像,不透明度为0%
而且它的工作方式完全符合您的要求。是的,我刚刚试过。它删除了搜索栏的背景视图。为什么在self.searchBar这一行没有出现编译错误?您是否创建了单独的属性并将搜索栏从nib连接到您的属性?我已将带有displaycontroller的uisearchbar添加到interface builder中的uitableview,然后从interface builder连接到所有者视图…当您将搜索栏和搜索显示控制器从对象库拖动到nib时,您将获得一个与搜索显示控制器关联的搜索栏。在这种情况下,搜索栏与SearchDisplayController对象链接,您可以通过self.SearchDisplayController.searchBar访问该对象。您不需要为搜索栏属性创建单独的IBOUTLET。这违背了使用SearchDisplayController的目的。事实上,甚至不要为搜索显示控制器创建IBOutlet,因为它是自动完成的。我理解,我删除了所有,我重新开始,我在interface builder中将UISearchBar和UISearchDisplayController添加到uitableview中,我还没有创建任何IBOutlet,我在答案中使用了您的代码,行仍然存在……是的,我刚试过。它删除了搜索栏的背景视图。为什么在self.searchBar这一行没有出现编译错误?您是否创建了单独的属性并将搜索栏从nib连接到您的属性?我已将带有displaycontroller的uisearchbar添加到interface builder中的uitableview,然后从interface builder连接到所有者视图…当您将搜索栏和搜索显示控制器从对象库拖动到nib时,您将获得一个与搜索显示控制器关联的搜索栏。在这种情况下,搜索栏与SearchDisplayController对象链接,您可以通过self.SearchDisplayController.searchBar访问该对象。您不需要为搜索栏属性创建单独的IBOUTLET。这违背了使用SearchDisplayController的目的。事实上,我甚至不为搜索显示控制器创建IBOutlet,因为它是自动完成的。我理解,我删除了所有,我重新开始,我在interface builder中将UISearchBar和UISearchDisplayController添加到uitableview中,我还没有创建任何IBOutlet,我在答案中使用了您的代码,行仍然存在。。。