0

当我最初加载我的滚动视图时,它工作正常。但是,当我单击菜单按钮以模态方式显示视图然后关闭视图时,它将整个滚动视图向左移动。以前滚动视图的开始部分现在位于屏幕左侧,并且滚动视图的末尾添加了一些空白区域。

我在序列前后检查了 contentoffset ,它保持不变,只是 uiscrollview 的内容似乎完全向左移动了。

我正在使用自动布局来创建我的滚动视图。在我的滚动视图中,我有一个容器视图,其中包含多个视图。容器视图通过我放入容器视图的子视图数量来定义滚动视图的大小。

Leaign ScrollView 子视图 UIView: 0x1f088040; 帧 = (0 0; 1597.5 192.5); 层=CALayer:0x1f0552c0

View Did Appear ScrollView Subviews UIView: 0x1f088040; 帧 = (-480 0; 1597.5 192.5); 层=CALayer:0x1f0552c0

更奇怪的是,当我将容器视图设置回它的原始大小时,它不会在我开始滚动时立即停留在那里,它具有正确的初始值,但随后会重置回错误的值。

在 prepareForSegue 中:

离开 ScrollView 子视图 UIView: 0x1e06a3a0; 帧 = (0 0; 1597.5 192.5); 层=CALayer:0x1e03a290

在 ViewDidAppear 之前我将它设置回 0 0

View Did Appear ScrollView Subviews UIView: 0x1e06a3a0; 帧 = (-480 0; 1597.5 192.5); 层=CALayer:0x1e03a290

在视图中滚动

查看是否滚动滚动视图子视图 UIView:0x1e06a3a0;帧 = (0 0; 1597.5 192.5); 层=CALayer:0x1e03a290

查看是否滚动滚动视图子视图 UIView: 0x1e06a3a0; 帧 = (-480 0; 1597.5 192.5); 层=CALayer:0x1e03a290

查看是否滚动滚动视图子视图 UIView: 0x1e06a3a0; 帧 = (-480 0; 1597.5 192.5); 层=CALayer:0x1e03a290

查看是否滚动滚动视图子视图 UIView: 0x1e06a3a0; 帧 = (-480 0; 1597.5 192.5); 层=CALayer:0x1e03a290

它似乎总是 160 的倍数的偏移量

4

0 回答 0