我需要创建一个长的 uiscrollview ,其中嵌入了一堆 subview 。
但是,当我将 uiscrollview 添加到 Controller 时,Storyboard 给我的工作区域太小。有没有办法先在 uiscrollview 上工作,然后使用 Storyboard 将其添加到 Controller 中?
就像本教程页面上的 #2(它不是 Storyboard版本):http://agilewarrior.wordpress.com/2012/05/18/uiscrollview-examples/
版本是 4.5.2。
谢谢!
最佳答案
使用 Storyboard,您无法将控件拖出场景,但您可以通过更改场景本身的模拟指标来实现您想要的效果。因此,选择 View Controller 本身并单击“属性检查器”,并将模拟大小度量更改为自由格式,如下所示:
然后单击该场景的主视图并为此打开“尺寸检查器”,并将尺寸更改为足以工作的尺寸:
您的 Storyboard看起来很奇怪,但您现在可以添加/更改您的 ScrollView ,使其足够大以显示您想要的所有内容。运行应用程序后(假设您已正确设置自动布局约束或非自动布局自动调整大小的蒙版),它将正常工作:
奇怪的是,我发现当不使用自动布局时,我必须以编程方式更改 contentSize
但是,为了确保它对于所有控件都足够大:
- (void)adjustContentSizeForScrollView:(UIScrollView *)scrollView
{
CGFloat height = 0.0;
for (UIView *subview in scrollView.subviews)
{
CGFloat viewBottom = subview.frame.origin.y + subview.frame.size.height;
if (viewBottom > height)
height = viewBottom;
}
scrollView.contentSize = CGSizeMake(scrollView.contentSize.width, height);
}
关于ios - Storyboard] 如何先在 uiscrollview 上工作,然后再添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14325122/