我已经搜索了S / OF,找不到针对TabView后面的TableView的修复程序。
我这样设置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
应该满足内容插入条件,并且不允许TableView在TabBar后面滚动。
请注意,在TabBarController中,我的TabBars的半透明性设置为false。
tabBar.isTranslucent = false
一如既往地感谢您的帮助。
答案 0 :(得分:1)
您是否在viewDidAppear中尝试过此操作?
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
tableView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0)
}
修改
删除
messagesTableView.frame = view.frame
并将autoLayout添加到您的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)
])