我有一个带有navigatonController的tabViewController作为选项卡1. navigationController的根视图是listView,选择一个项目将pageViewController推送到堆栈。 pageVC管理同一viewController的数组,该数组具有带动态内容的scrollView并垂直滚动。 scrollView使用以下代码固定到viewController的锚点:
MySQLHandler.prototype.query = function (queryString, params, callback) {
this.logger.log(queryString);
let _logger = this.logger;
this.mysqlConn.getConnection(
function(err, connection) {
if(err) {
_logger.error(err);
return callback(err, null);
}
connection.query(queryString, params, function(err, success) {
connection.release();
if(err) {
_logger.error(err);
return callback(err, null);
}
return callback(null, success);
});
}
);
};
我需要支持iPhone 4s(iOS 9.3)设备。
scrollView和滚动中的动态内容在iOS 11设备上按预期工作,内容从导航栏下方开始,滚动停在标签栏的顶部。
我遇到的问题是iOS版本低于11. scrollView内容最初显示正确,但如果我点击或滚动内容,顶部移动到导航栏后面,我再也看不到scrollView的顶部了。对于scrollView和标签栏的底部也是如此。
我已经为edgesForExtendedLayout,scrollView insets等尝试了几个堆栈建议,但找不到合适的解决方案。理想情况下,我希望以编程方式理解约束,布局指南等,并且任何指向教程的链接都会很有用。
答案 0 :(得分:0)
你可以在其他地方试试吗
let navBarView = self.navigationController.navigationBar
let tabBarView = self.tabBarController.tabBar
NSLayoutConstraint.activate([
scrollView.topAnchor.constraint(equalTo: navBarView.bottomAnchor, constant: 0),
scrollView.leftAnchor.constraint(equalTo: view.leftAnchor, constant: 0),
scrollView.rightAnchor.constraint(equalTo: view.rightAnchor, constant: 0),
scrollView.bottomAnchor.constraint(equalTo: tabBarView.topAnchor, constant: 0)
])