UISearchDisplayController

UISearchDisplayController

我知道该主题以前曾涉及过,但据我所知,从未讨论过适合我情况的可能解决方法。

问题是UISearchDisplayController在自定义ContainerView控制器中似乎无法正常工作。我放置了一个sample project,它在我能想到的最简单的情况下演示了此问题。

有没有其他方法可以包含视图控制器,以便UISearchDisplayController可以正常工作?

我的怀疑是UISearchDisplayController没有对正确的UINavigationController的引用(尽管我尝试以编程方式在viewDidMoveToParentViewController中设置了UINavigationController的位置)。

最佳答案

嵌入式UITableViewController也有类似的问题。其中之一是在UISearchBar可见的情况下在UIViewControllers之间切换之后缺少了UISearchDisplayController(我正在使用SWRevealViewControllerUIViewController之间切换)。仅在iPad上会出现此问题。结果发现UISearchBar突然隐藏在UINavigationBar的后面。现在,我用UITableViewController中呈现的UIContainerView中的以下代码行解决了所有问题:

- (UINavigationController *)navigationController {
    return nil;
}

这些行阻止UISearchDisplayController到达并更改UINavigationController。我还将此方法子类化为“MyContainerTableViewController”类,现在将此类用于所有嵌入式UITableViewController

关于ios - UISearchDisplayController在容器 View 中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23333408/

10-10 23:24