2013-10-08 53 views
0

我有一个UIScrollView其中嵌入了几个UITableView s。我希望允许每个表格根据需要展开其高度,以显示其所有单元格。滚动视图的框架占用了整个屏幕,所以它的contentSize.height需要扩展以适应最大的表格(我认为这是默认行为,但是我提到它以防万一我不正确)。这一切都可以在我的故事板上完成吗?或者如果我需要添加代码来做到这一点,我发现this tutorial,但它是用于iOS 6 - 有这个约束的任何代码改变了iOS 7?Xcode 5自动布局 - 嵌入表

+0

我有点不舒服地问这个,但为什么downvote? – GeneralMike

回答

0

它可以通过两种方式来完成。通过代码(提及位置)手动移动UI元素并覆盖它,但是在旋转或通过提及自动布局中的约束。

此链接http://www.doubleencore.com/2013/09/auto-layout-updates-in-ios-7/提供了ios7自动布局的详细信息。

+0

是的,我在看到这篇文章的时候看到了这篇文章。不幸的是,它没有任何有关如何设置调整大小的高度或如何在代码中执行任何操作的信息。我想让这个工作与自动布局的原因是,所以我不必担心像旋转这样的事情。 – GeneralMike

2

如果您事先知道每个表占用多少空间,您可以纯粹在故事板中完成它,但因为每个UITableView也是一个scrollview,所以UITableView的默认行为是填充指定大小的内容并滚动if有溢出。

如果您在设计时不知道表的高度,则需要在运行时设置它们。例如,请参阅Autolayout a UIScrollView to fit content including subviews and grouped tables,简短的答案是为表格添加高度约束,将其作为出口拖入控制器,然后在知道该高度时设置高度。

+0

是的,我需要高度是动态的,所以看起来我必须用代码来完成它,正如我担心的那样。但是,谢谢,我不知道你可以设置一个限制作为一个出路。所以看起来这样做还是会有点痛苦(这在自动布局之前也是头疼),但至少我只需要做一次,而不必担心旋转或不同的屏幕尺寸或任何东西。谢谢,我会进行投票并接受一次,我可以确认它的工作。 – GeneralMike