这一定很琐碎,但我不明白你应该如何以编程的方式排除UISearchController?

请注意,它是新的UISearchController(2014年随iOS 8推出),而不是UISearchDisplayController.

到目前为止,这是我得到的

// Dismiss the search tableview
searchController.dismissViewControllerAnimated()
// Clear the Search bar text
searchController.active = false

但我仍然有取消按钮,无法摆脱它.

推荐答案

经过更多的测试,你只需要设置:

searchController.active = false
// or swift 4+
searchController.isActive = false

这是我try 的第一件事,但我在一个UISearchControllerDelegate方法中调用了它,但它不起作用(可能应该用dispatch_async调用它(halbano的回答似乎证实了这一点)).

无论如何,因为我在网上找不到这个答案,我在回答我自己的问题,我希望它能帮助别人.

Swift相关问答推荐

SwiftUI:使视图B与视图A具有相同宽度的视图A更改比率?

有没有一种方法可以迭代可编码的代码(例如,JSON解析中的每一项)?

SwiftUI轨迹绘制怪异

SWIFT闭包使用的是陈旧的值,即使它是S@转义

不能将符合协议的SWIFT类的实例分配给需要该协议的Objective-C属性

KMM-Swift铸造密封类

表视图插座单元测试失败

如何在设备(或常量)地址空间中创建缓冲区?

macOS 的窗口框架中使用的真实类型和真实类型是什么?

确定路径是否相交的有效方法

如何从数据中读取以空结尾的字符串?

SwiftUI 分段 Select 器的问题

如何在 SwiftUI 中将图像传递到 2 个视图

iOS SwiftUI - 无法转换 ObservedObject 类型的值

对齐时如何避免图像尺寸缩小

是否可以使任何协议符合 Codable?

如何自己快速编写 Hashable 协议

使用 Alamofire 4.0 (Swift 3) 下载文件

无法停止 AVPlayer

迭代 Firebase 中的子快照