ios - 为什么 UDimmingView 总是覆盖屏幕主边界?

标签 ios swift uisearchcontroller

我正在尝试制作底部 slider 菜单,其中包含 TableView Controller 和 TableView 标题内的搜索 Controller 。此时,我添加了 TableView Controller 作为 subview Controller 。搜索栏聚焦后, View 触发器变暗,但它覆盖了屏幕主边界。我期望调光 View 保持在 subview Controller 边界内。我无法理解为什么调光 View 总是添加屏幕主边界的原因?我有一个屏幕截图来演示我遇到的问题。

感谢您的帮助。

class ChildTableViewController: UITableViewController {

    lazy var searchController: UISearchController = {
        let temp = UISearchController(searchResultsController: resultSearchController)
        temp.dimsBackgroundDuringPresentation = true
        return temp
    }()

    private var resultSearchController = ResultSearchTableViewController(style: .plain)

    override func viewDidLoad() {
        super.viewDidLoad()

        prepareViewController()
    }

    func prepareViewController() {
        self.tableView = UITableView(frame: .zero, style: .plain)
        self.tableView.separatorStyle = .singleLine
        self.tableView.register(ChildTableViewCell.self, forCellReuseIdentifier: ChildTableViewCell.identifier)
        self.tableView.tableHeaderView = searchController.searchBar

        self.definesPresentationContext = true
    }

}

Screen shot

最佳答案

即使其内容出现在 subview Controller 上下文上,搜索 Controller 本身也是一个呈现的 View Controller ,并阻止与任何其他界面交互。因此,如果您要求调暗 View ,调暗 View 将涵盖除搜索 Controller 界面之外的所有内容,这是有道理的。如果您不喜欢这样,请将 obscuresBackgroundDuringPresentation 设置为 false

(您不应使用 dimsBackgroundDuringPresentation。请使用 obscuresBackgroundDuringPresentation。)

关于ios - 为什么 UDimmingView 总是覆盖屏幕主边界?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55689765/

相关文章:

ios - 从 searchController 解散后如何隐藏导航栏

ios - 防止可拖动的 uiimage 移动超出 y 轴上的点

iOS 布局 : push UIView below automatically

ios - UITabBarController 中的 UISearchController 不响应触摸

xcode - Applovin tvOS 库问题

swift - 如何使用CAKeyframeAnimation?

ios - Swift iOS Firebase - 如何组合 queryOrdered(byChild) 和 GeoFireobserve(.keyEntered) 以同时获取快照和位置结果?

ios - 为什么glReadPixels()在iOS 6.0中的此代码中失败?

ios - 我如何创建一个带有静态单元格的 UItableViewContoller 并将带有原型(prototype)单元格的 UITableView 插入其中一个静态单元格?

ios - 从 RSS feed swift 获取 img url