什么定义UIScrollView分页大小?

时间:2014-09-12 07:39:16

标签: ios objective-c iphone uiview uiscrollview

首先,我遇到了一个带有Pagin启用的UIScrollView的奇怪问题,但仅限于iPhone 4和iOS 7。

所以我的想法是我有一个包含UIView(B)的UIScrollView(A),它有子视图(Cs)

适用于iOS 7和8的iPhone 5屏幕尺寸。 它在iOS 8的iPhone 4上完美运行。

它在iPhone 4 iOS 7.x上无法正常工作

记录数小时后,问题出现了:

UIScrollView框架高度:480< - 编辑:这有时是480,有时是568 UIScrollView内容大小:960 UIView B框架高度:960

第一页正确显示。

当向下滚动到第二页时,UIScrollView A contentOffset是392,而不是预期的480,因此无法看到第二页的底部,并且第一页的底部仍然可见顶部第二页。

所以问题是:iOS如何找到页面大小?

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:2)

页面大小是滚动视图的大小。听起来问题是内容的高度没有正确定义。如果使用自动布局,则需要确保正确设置约束。否则,您可以以编程方式设置内容的大小。

以编程方式检查视图的内容大小应该确认这是否是问题。

在Xcode 6中运行时,您可以使用此按钮更仔细地检查屏幕上的视图:

Button to examine views

在这里找到:

enter image description here

当您的代码正在运行并且您处于正确的视图

答案 1 :(得分:0)

我终于通过删除UIScrollView底部约束并用高度约束替换它,在运行时将其设置为superview高度来获得它。

似乎滚动视图分页大小刚刚被正确评估,但是scrollview对于屏幕来说太大了。