【问题标题】:Scroll view with Auto Layout具有自动布局的滚动视图
【发布时间】:2013-08-21 09:22:07
【问题描述】:

我在滚动视图中有一个视图,当我从这个 ViewController 序列(推送)到 CommentViewController 并返回时,滚动视图中的视图向上移动了 200 px,我不知道为什么,我在代码中没有任何内容.

-(void)viewDidAppear:(BOOL)animated
{
  [super viewDidAppear:animated];
  [scroller setScrollEnabled:YES];
  [scroller setContentSize:CGSizeMake(320, 2000)];
}

当自动布局开启时。当它关闭时,它的工作,但设计并不令人印象深刻...... 我可以用自动布局来解决它吗?

【问题讨论】:

标签: ios xcode scrollview


【解决方案1】:

这里有一个快速修复

在 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;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多