【问题标题】:Weird width in UITableView on iOS 11iOS 11 上 UITableView 的奇怪宽度
【发布时间】:2018-03-17 03:46:44
【问题描述】:

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

    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()

我做错了什么?

【问题讨论】:

  • 你用什么方法设置框架?
  • 我正在使用此配置在 viewDidload 上设置框架@MaulikBhuptani
  • 尝试在 viewDidLayoutSubviews 中只设置 UITableView 和 UISearchBar 的框架
  • 好的,这就是问题所在。谢谢@MaulikBhuptani
  • 不客气,伙计

标签: ios uitableview ios11 xcode9


【解决方案1】:

所以,感谢@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()
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-06
    • 2011-03-19
    • 2013-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-30
    相关资源
    最近更新 更多