在ios

时间:2016-03-21 10:03:52

标签: ios swift uiview

我正在构建一个名为MyUIView的自定义IBDesignable UIView,它将从.xib文件中实例化。 MyUIView旨在在我的应用程序中重用。

我遇到的问题是,当我在故事板中的UIViewController中创建MyUIView视图时,autolayout要求我为视图的宽度和高度提供约束。 MyUIView具有可变高度,我希望视图可以包裹渲染的MyUIView的宽度和高度,而无需在storyboard中指定视图的大小。

我如何实现这一目标?

谢谢!

1 个答案:

答案 0 :(得分:0)

在视图类中覆盖intrinsicContentSize。除非您使用显式约束另行指定,否则autolayout引擎将使用此大小进行查看。

请注意,只要内部大小发生变化,您就必须在视图上调用invalidateIntrinsicContentSize()