UISearchController iOS 11不在导航栏中被破坏?

时间:2017-10-13 02:05:16

标签: ios objective-c iphone uisearchbar uisearchcontroller

我有一个正在制作的应用。在iPad上,布局是一个布局上的2个表视图。左侧表格视图有一个搜索栏。在iOS 9/10中,这很好用 - 搜索栏在展开时只显示在表格视图中。在iOS 11中,相同的代码将使搜索栏扩展到表格视图之外并附加到屏幕顶部的导航栏区域。

如果我更改了搜索控制器的演示文稿上下文,那么在iOS 11中它会被完全破坏而无效。

self.definesPresentationContext = YES; //YES PRESENTS SEARCH BAR IN TABLE VIEW

我已经创建了一个演示项目来简化示例,这是Apple的表演示,其中表格视图不是全屏。可以将表示上下文设置为表视图,也可以不设置搜索栏范围按钮。

在演示中,搜索控制器在表视图内部显示时,可以点击以开始搜索,但对任何点击都完全没有响应 - 取消按钮,X清除文本,试图移动光标。键盘文本输入有效,它将正确过滤项目。但是你被困住了,无法退出。

这是演示项目的链接。我错过了什么或这是一个苹果虫? APLMainTableViewController.m 中的大部分代码。

DOWNLOAD CODE EXAMPLE at this link

完整的应用图片:

Image of full app UI

在iOS 10中正确地进行搜索:

Example of iOS 10 correct table search bar

使用错误的搜索控制器演示项目截图:

iOS 11 bad search controller in table frame

0 个答案:

没有答案