【发布时间】:2014-04-21 01:30:52
【问题描述】:
我有一个 UIScrollView……在那个 UIScrollView 里面是一个 UIView(内容容器)……在那个内容容器里面是 3 个视图……
- 标签
- 另一个 UIView (A)
- 另一个 UIView (B)
所有三个都是以编程方式创建的
2 和 3 都是从单独的 ReST 调用中加载的...所以在加载视图时,它们都是 30pt 高的微调器。
在其中一个或两个调用返回后,我想正确调整它们的大小(顶部将获得一个 320x320 的图像),底部将获得一个表格(大小目前尚未确定)...
我正在尝试实现此间距容器顶部 - 20pt - 标签 - 20pt - 内容 A - 20pt - 内容 B - 容器底部
我在内部使用以下 -(void) updateViewConstraints
[_containerView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-20-[{label}]-20-[{content A}]-20-[{content B}]"
options:0
metrics:nil
views:viewsDictionary]];
这是获取 A 内容的调用返回后的样子:
我真的已经准备好刺伤我的眼睛了......我不知道为什么这会如此困难。内容 B 的框架如下所示:Other Frame: {{0, 150}, {320, 30}}, Bounds: {{0, 0}, {320, 30}}
我最终想要做的是创建一个 UIScrollView,它允许我滚动视图以查看将显示在底部的图像和表格......我有 UIScrollView 和容器视图( _containerView = UIView) 作为 IB 中的 IBOutlets。
【问题讨论】:
-
自动布局和滚动视图太可怕了!我感觉到你的痛苦。您需要确保滚动视图中的所有项目都有大小,并以某种方式限制在滚动视图的所有边缘。或者,如果您不能给它们一个大小,请将它们限制在滚动视图超级视图上。例如在垂直滚动视图中,内部视图的左右边缘通常可以约束滚动视图超级视图。
-
视图 A 是否包含微调器,然后是图像视图,作为子视图?还是视图 A 是一个微调器,然后将其从视图层次结构中移除,然后将图像视图直接插入为滚动视图的子视图?
标签: ios objective-c uiview uiscrollview