UISearchController 层次结构中额外的意外 UIView

UISearchController extra unexpected UIView in hierarchy

我对 UISearchController 有疑问。它正在添加一个额外的视图作为其视图的直接子视图。它有 isAccessibilityElement = true 和描述 "Double-tap to dismiss",这会阻止所有 Appium 自动测试。我不知道为什么,在哪里以及如何添加它。

有人知道添加此视图的时间和原因以及如何删除它吗?我试图设置它的 isAccessibilityElement = false 表单代码,但在某些情况下它以某种方式设置回 true

对于遇到此问题的任何其他人。这是由 Apple 给 UISearchController 的默认行为造成的,其中 searchResultsController 最初是隐藏的,直到 UISearchBar 有文本。

我们在 searchResultsController 中使用了旧代码来取消隐藏自身 view.isHidden = false,这与默认逻辑相冲突。

解决方法是删除它并改为设置 searchController.showsSearchResultsController = true,它始终显示结果并且不添加双击以关闭视图。