为什么 UITableViewController navigationItem.searchController 不会在 iOS 中设置?
Why will UITableViewController navigationItem.searchController not set in iOS?
出于某种原因,当我使用 UISearchController 设置 UITableViewController navigationItem.searchController 时,它不接受它。
这是我的代码:
let searchController = UISearchController(searchResultsController: nil)
if #available(iOS 11.0, *) {
print("?", navigationItem.searchController)
print("!", searchController)
navigationItem.searchController? = searchController
print("?", navigationItem.searchController)
} else {
tableView.tableHeaderView = searchController.searchBar
}
这是调试 window:
? nil
! <UISearchController: 0x105077600>
? nil
这与搜索控制器或导航项无关。它与 Swift 语言有关。您不小心撞到了 。问题是这一行:
navigationItem.searchController? = searchController
我不知道你认为那是什么意思,但它不是那个意思!删除问号:
navigationItem.searchController = searchController
出于某种原因,当我使用 UISearchController 设置 UITableViewController navigationItem.searchController 时,它不接受它。
这是我的代码:
let searchController = UISearchController(searchResultsController: nil)
if #available(iOS 11.0, *) {
print("?", navigationItem.searchController)
print("!", searchController)
navigationItem.searchController? = searchController
print("?", navigationItem.searchController)
} else {
tableView.tableHeaderView = searchController.searchBar
}
这是调试 window:
? nil
! <UISearchController: 0x105077600>
? nil
这与搜索控制器或导航项无关。它与 Swift 语言有关。您不小心撞到了
navigationItem.searchController? = searchController
我不知道你认为那是什么意思,但它不是那个意思!删除问号:
navigationItem.searchController = searchController