UIScrollView根本不滚动
问题描述:
我已经尝试了几个s.o线程,但没有人为我解决这个问题。我有一个“containerScrollView”,不会让我滚动它。我已经尝试过让它比视图的内容更长更短,但要么不起作用(更长),要么把整个视图变成白色(更短)。在iPhone 5上,我仍然只能看到第三个标签,而我需要能够向下滚动浏览“约”部分。建议?由于] 1UIScrollView根本不滚动
答
试试这个
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
scrollView.contentSize = CGSize(width:self.view.bounds.width, height: 1430)
}
答
看来你的滚动视图在故事板太多的高度。只需使其高度与设备高度相同即可。然后以编程方式设置滚动视图的内容大小。无论是在
scrollView.contentSize = CGSize(宽度:self.view.bounds.width,高度:(无论高度,你需要))
答
UIScrollView
是棘手的,当涉及到添加约束。您应该始终添加UIView
作为您的UIScrollView
的内容视图。你的层次应该像这个 -
|---UIScrollView
|---Content View
|---UIImageView
|---UILabel
|---
添加的领先,顶部,尾部和底部为您UIScrollView
您superView
。添加一个UIView
作为带有前导,顶部,尾部和底部的内容视图。还要将内容视图的等宽和等高限制添加到viewController视图,而不是UIScrollView
。将高度约束的优先级设置为250
。现在快乐地在您的内容视图中添加所有后续视图! (确保您的最底部视图对内容视图有底部)
或者根据您的屏幕截图,如果您要制作类似菜单的东西,则应该使用UITableView
。
您是否为滚动视图设置了约束? – User511
滚动视图的内容大小必须超过您的屏幕大小,然后只有您可以滚动。 –
这可能会有所帮助:https://spin.atomicobject.com/2014/03/05/uiscrollview-autolayout-ios/ –