iOS 11 上 UITableView 中的奇怪宽度

Weird width in UITableView on iOS 11

我刚刚在我的视图中添加了一个顶部为 UISearchBarUITableView,但仅在 iOS 11 上,table 视图比我的搜索栏更宽,这是我的代码:

    self.autocompleteTableView = UITableView(frame: CGRect(x: self.storeSearchBar.frame.origin.x, y: self.storeSearchBar.frame.origin.y + self.storeSearchBar.frame.size.height, width: self.storeSearchBar.bounds.width, height: 200.0))
    self.autocompleteTableView!.alpha = 0.8
    self.autocompleteTableView!.delegate = self
    self.autocompleteTableView!.dataSource = self
    self.autocompleteTableView!.separatorStyle = .none
    if #available(iOS 11.0, *) {
        self.autocompleteTableView!.insetsContentViewsToSafeArea = true
    }

    self.storeSearchBar.alpha = 0.8
    self.storeSearchBar.delegate = self
    self.view.addSubview(self.autocompleteTableView!)
    self.autocompleteTableView!.isHidden = true

    let searchBar = self.storeSearchBar!
    searchBar.barTintColor = UIColor.white
    searchBar.sizeToFit()

我做错了什么?

所以,感谢@MaulikBhuptani,答案是:

override func viewDidLayoutSubviews() {
    self.autocompleteTableView = UITableView(frame: CGRect(x: 
    self.storeSearchBar.frame.origin.x, y: self.storeSearchBar.frame.origin.y + self.storeSearchBar.frame.size.height, width: self.storeSearchBar.bounds.width, height: 200.0))
    self.autocompleteTableView!.alpha = 0.8
    self.autocompleteTableView!.delegate = self
    self.autocompleteTableView!.dataSource = self
    self.autocompleteTableView!.separatorStyle = .none
    if #available(iOS 11.0, *) {
        self.autocompleteTableView!.insetsContentViewsToSafeArea = true
    }

    self.storeSearchBar.alpha = 0.8
    self.storeSearchBar.delegate = self
    self.view.addSubview(self.autocompleteTableView!)
    self.autocompleteTableView!.isHidden = true

    let searchBar = self.storeSearchBar!
    searchBar.barTintColor = UIColor.white
    searchBar.sizeToFit()
}