嵌套的UIScrollViews和AutoLayout

时间:2014-01-22 20:58:20

标签: ios iphone ios7 uiscrollview storyboard

我已经在 StackOverflow 中看到了关于UIScrollViewAutoLayout的几个类似问题,但现在轮到我了,因为我无法使其正常工作。

我的想法是让内部UIScrollView水平滚动(包含一组图像),外部UIScrollView除了上面的内部,包含多个UILabel,{{ 1}}对象和垂直滚动。

没有UITextView两者都表现得像预期的那样但不幸的是尺寸和原点都不对。使用AutoLayout,外部AutoLayout,滚动一点但内部根本不移动。我可以在UIScrollView期间确认内部UIScrollView具有正确的ContentSize,但后来在代码中有0,0。

以下是包含观看次数和相关viewDidLoad

的屏幕截图

enter image description here

有什么想法吗?

更新

对于可能面临同样问题的其他人。 在我看来,似乎Constrains弄乱了整个事情。正如您在屏幕截图中看到的那样,我将寻呼机作为内部UIPageControl 错误的子视图!

我只是移出UISrollView(成为外部的子视图)并离开Xcode完成其余工作(编辑器>解决自动布局问题>在视图控制器中添加缺失约束)。在此之后,UIPageControl对自己进行了重视(正如Apple在文档中所述)。我花了这么多时间在这上面。我希望我的解决方案可以节省他人的时间。

我正在研究Xcode5

1 个答案:

答案 0 :(得分:0)

我通过两个步骤解决了UIScrollView内容问题:

  1. 选择UIScrollView,转到编辑器>解决自动布局问题>添加缺少的约束
  2. 添加一个IBOutlet NSLayoutConstraint,用于放置在UIScrollView中的任何高度,例如: UIWebView的。将此插座连接到您通过故事板添加的高度限制。
  3. @property(弱,非原子)IBOutlet NSLayoutConstraint * heightConstraint;

    //一旦绘制了元素,就将常量设置为

    self.heightConstraint.constant = frame.size.height;

    希望这有帮助。