我在滚动视图中有一个视图,当我从这个ViewController seque(推)到CommentViewController,然后回来时,滚动视图中的视图移动了200 px,我不知道为什么,我在代码中没有任何东西
-(void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[scroller setScrollEnabled:YES];
[scroller setContentSize:CGSizeMake(320, 2000)];
}
自动布局打开时。当它关闭,它的工作,但设计并不令人印象深刻...... 我可以使用自动布局修复它吗?
答案 0 :(得分:0)
这是一个快速解决方案
在viewWillDisappear中,保存scrollView的contentOffset并将其重置为零 稍后在viewDidLayoutSubview中,将contentOffset恢复为旧值。
以下是示例代码
-(void) viewDidLayoutSubviews
{
[super viewDidLayoutSubviews];
if(!CGPointEqualToPoint(CGPointZero, self.contentOffset))
{
scroller.contentOffset = self.contentOffset;
self.contentOffset = CGPointZero;
}
}
-(void) viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
self.contentOffset = scroller.contentOffset;
scroller.contentOffset = CGPointZero;
}