当我从故事板触发segue时,UIScrollview水平偏移会发生变化

时间:2013-02-18 17:18:04

标签: ios objective-c storyboard

当我加载我的scrollview时,它工作正常。但是,当我单击菜单按钮以模态方式显示视图然后关闭视图时,它会将整个滚动视图向左移动。曾经是滚动视图开头的内容现在离屏幕左侧,滚动视图的末尾有一些额外的空白区域。

我检查了seque之前和之后的contentoffset,它保持不变,只是看起来uiscrollview的内容已完全向左移动。

我正在使用autolayout创建我的scrollview。在我的scrollview中,我有一个容器视图,其中包含多个视图。容器视图根据我放入容器视图的子视图数量来定义scrollview的大小。

Leavign ScrollView Subviews UIView:0x1f088040; frame =(0 0; 1597.5 192.5); layer = CALayer:0x1f0552c0

查看是否显示ScrollView子视图UIView:0x1f088040; frame =(-480 0; 1597.5 192.5); layer = CALayer:0x1f0552c0

更奇怪的是当我将容器视图设置回它的原始大小时,一旦我开始滚动它就没有保持在那里它具有正确的初始值但是然后重置为错误的值。

在prepareForSegue中:

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

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

查看是否显示ScrollView子视图UIView:0x1e06a3a0; frame =(-480 0; 1597.5 192.5); layer = CALayer:0x1e03a290

在视图中滚动

view Scroll ScrollView Subiews UIView:0x1e06a3a0; frame =(0 0; 1597.5 192.5); layer = CALayer:0x1e03a290

查看Scroll ScrollView子视图UIView:0x1e06a3a0; frame =(-480 0; 1597.5 192.5); layer = CALayer:0x1e03a290

查看Scroll ScrollView子视图UIView:0x1e06a3a0; frame =(-480 0; 1597.5 192.5); layer = CALayer:0x1e03a290

查看Scroll ScrollView子视图UIView:0x1e06a3a0; frame =(-480 0; 1597.5 192.5); layer = CALayer:0x1e03a290

似乎总是偏离160的倍数

0 个答案:

没有答案