- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 TableViewController、一个 SearchResultsController 和一个 WebViewController。当我单击 TableViewController 中的一个单元格时,它会插入 WebViewController 打开一个与该单元格相关的 url。
TableViewController 有一个 UISearchController 将结果过滤到 SearchResultsController 但是当在 SearchResultsController 中单击一个单元格时,WebViewController 不会被推送。
这是 SearchResultsController 的 didSelectRowAtIndexPath 的代码:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
WebViewController *webViewController = [[WebViewController alloc] init];
NSString *extensionURL = (self.searchResults[indexPath.row])[@"url"];
NSURL *baseURL = [NSURL URLWithString:@"http://www.baseurl.com"];
NSURL *URL = [NSURL URLWithString:extensionURL relativeToURL:baseURL];
webViewController.title = (self.searchResults[indexPath.row])[@"title"];
NSLog(@"%@", URL);
webViewController.URL = URL;
[self.navigationController pushViewController:webViewController
animated:YES];
}
- (void)viewDidLoad
{
[super viewDidLoad];
SearchResultsViewController *controller = [[SearchResultsViewController alloc] initWithStyle:UITableViewStylePlain];
[self addObserver:controller forKeyPath:@"results" options:NSKeyValueObservingOptionNew context:nil];
self.searchController = [[UISearchController alloc] initWithSearchResultsController: controller];
self.searchController.searchResultsUpdater = self;
self.searchController.hidesNavigationBarDuringPresentation = NO;
self.searchController.dimsBackgroundDuringPresentation = NO;
self.searchController.delegate = self;
self.definesPresentationContext = YES;
UISearchBar *searchBar = [[UISearchBar alloc] init];
searchBar = self.searchController.searchBar;
searchBar.searchBarStyle = UISearchBarStyleMinimal;
UITextField *searchField = [searchBar valueForKey:@"_searchField"];
searchBar.barTintColor = [UIColor whiteColor];
searchBar.tintColor = [UIColor whiteColor];
self.navigationItem.titleView = searchBar;
}
最佳答案
进行搜索时,您将显示 NewModalViewController,因此您只需执行一些步骤即可在显示搜索 Controller 时推送 View Controller
1)self.definesPresentationContext = YES;
在此之后,您应该像这样插入您的 View Controller
2) [self.presentingViewController.navigationController pushViewController:sec 动画:YES];
注意:目前的 modalviewcontroller 没有导航 Controller ,因此正常的推送编码不会工作,因为它没有分配给导航。
享受.....
关于ios - 无法将 View 推送到 searchResultsController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34660256/
我是一名优秀的程序员,十分优秀!