AutoLayout似乎每一步都在与我搏斗,因为我的视野很大。
我有一个用于用户输入的视图控制器,AutoLayout似乎毫不动摇地决定让我的视图667像素高。
我玩过许多布局设置的变体,许多内容拥抱和抗压缩组合,不管我做什么,AutoLayout找到了一种将视图扩展到667像素的方法。
我使用Reveal,一个显示布局框架、约束等(revealapp.com)的应用程序,它向我展示了UIPopoverPresentationController正在添加自己的自动调整约束。
以下是我的观点在呈现时的大致样子..。

请注意,尽管我将“接受”UIButton设置为30像素,优先级为1000,但AutoLayout仍在拉伸它,以满足其667像素高的奇怪要求。
当我运行这个应用程序时,我的弹出器看起来.

当我展示了运行中的应用程序,我把它缩小到弹出式,这就是显示.


注意,UIPopoverPresentationController本身就有这些约束。
如何控制UIPopoverPresentationController设置的约束??
发布于 2016-06-23 23:35:28
尝试使用boundingRectWithSize(_:options:attributes:context:) of NSString来确定标签的高度。
一旦你这样做了,你可以预测你的弹出的大小将是通过添加任何额外的高度,你的标签创造。您可以使用它来设置正在呈现的视图控制器的preferredContentSize属性。
https://stackoverflow.com/questions/37999365
复制相似问题