我正在使用UISearchController
和UITableView
。选中UITableView
中的单元格后,我会在整个屏幕上方添加一个黑色UIView
,并在其上添加一些子视图。 UISearchController
处于非活动状态时,它可以正常工作。但是当它处于活动状态时,UISearchBar
显示在我的黑色视图上方。
self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
self.searchController.searchResultsUpdater = self;
self.searchController.dimsBackgroundDuringPresentation = NO;
self.searchController.searchBar.scopeButtonTitles = [NSArray array];
self.searchController.searchBar.delegate = self;
self.searchController.hidesNavigationBarDuringPresentation = NO;
self.searchController.searchBar.backgroundImage = [self imageWithColor:[MySingleton shared].barTintColor];
[self.searchController.searchBar sizeToFit];
[self.view addSubview:self.searchController.searchBar];
myView = [[UIView alloc] initWithFrame:CGRectMake(0, -64, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height)];
myView.backgroundColor = [UIColor blackColor];
myView.layer.opacity = 0.9;
[self.view addSubview:myView];
在放置视图之前,我已尝试将其设为非活动状态
self.searchController.active = NO;
并将myView添加到导航控制器的视图
[self.navigationController.view addSubview:myView];
仍然没有运气。有什么想法吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
有一种方法允许您在名为- insertSubview:aboveSubview:
的视图层次结构中的另一个视图上方插入视图。以下是如何使用它:
if (self.searchController.searchBar)
[self.view insertSubview:myView aboveSubview:self.searchController.searchBar];
else
[self.view addSubview:myView];