TabBar 后面的 TableView 内容
TableView Content behind TabBar
我搜索了 S/OF,但找不到解决 TableView 在我的 TabBar 后面的问题。
我这样设置我的 TableView;
func setUpTableView() {
messagesTableView.frame = view.frame
messagesTableView.backgroundColor = .white
view.addSubview(messagesTableView)
messagesTableView.tableFooterView = UIView()
messagesTableView.delegate = self
messagesTableView.dataSource = self
messagesTableView.register(UITableViewCell.self, forCellReuseIdentifier: messagesCellIdentifier)
edgesForExtendedLayout = []
extendedLayoutIncludesOpaqueBars = false
messagesTableView.contentInsetAdjustmentBehavior = .never
}
然后我setUpTableView()
在viewDidLoad()
.
根据所有消息来源
edgesForExtendedLayout = []
extendedLayoutIncludesOpaqueBars = false
messagesTableView.contentInsetAdjustmentBehavior = .never
应该满足content insets并且不允许TableView在TabBar后面滚动。
请注意我的 TabBars 的半透明在 TabBarController 中设置为 false。
tabBar.isTranslucent = false
一如既往地感谢任何帮助。
添加插图
当滚动到底部没有显示完整的 TableView 内容时,因为 TabBar 覆盖了最后几个索引。
您在 viewDidAppear 中尝试过吗?
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
tableView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0)
}
编辑
删除
messagesTableView.frame = view.frame
并将自动布局添加到您的 messagesTableView
messagesTableView.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
messagesTableView.topAnchor.constraint(equalTo: topAnchor),
messagesTableView.leftAnchor.constraint(equalTo: leftAnchor),
messagesTableView.bottomAnchor.constraint(equalTo: bottomAnchor),
messagesTableView.rightAnchor.constraint(equalTo: rightAnchor)
])
我搜索了 S/OF,但找不到解决 TableView 在我的 TabBar 后面的问题。
我这样设置我的 TableView;
func setUpTableView() {
messagesTableView.frame = view.frame
messagesTableView.backgroundColor = .white
view.addSubview(messagesTableView)
messagesTableView.tableFooterView = UIView()
messagesTableView.delegate = self
messagesTableView.dataSource = self
messagesTableView.register(UITableViewCell.self, forCellReuseIdentifier: messagesCellIdentifier)
edgesForExtendedLayout = []
extendedLayoutIncludesOpaqueBars = false
messagesTableView.contentInsetAdjustmentBehavior = .never
}
然后我setUpTableView()
在viewDidLoad()
.
根据所有消息来源
edgesForExtendedLayout = []
extendedLayoutIncludesOpaqueBars = false
messagesTableView.contentInsetAdjustmentBehavior = .never
应该满足content insets并且不允许TableView在TabBar后面滚动。
请注意我的 TabBars 的半透明在 TabBarController 中设置为 false。
tabBar.isTranslucent = false
一如既往地感谢任何帮助。
添加插图
您在 viewDidAppear 中尝试过吗?
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
tableView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0)
}
编辑
删除
messagesTableView.frame = view.frame
并将自动布局添加到您的 messagesTableView
messagesTableView.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
messagesTableView.topAnchor.constraint(equalTo: topAnchor),
messagesTableView.leftAnchor.constraint(equalTo: leftAnchor),
messagesTableView.bottomAnchor.constraint(equalTo: bottomAnchor),
messagesTableView.rightAnchor.constraint(equalTo: rightAnchor)
])