Popover 适配内容大小 IOS
Posted
技术标签:
【中文标题】Popover 适配内容大小 IOS【英文标题】:Popover adapt to content size IOS 【发布时间】:2016-01-13 17:22:11 【问题描述】:我在 iPhone 上有简单的弹出框:
我希望它的大小与弹出窗口的“内容大小”一样 - 在添加按钮下方结束。我可以通过使用自动布局来实现吗?我不想改变这个弹出框的宽度,只是高度。我曾尝试在内部视图中使用 prefferedContentSize,但它太小了。 我尝试通过自动布局来做到这一点,但它不起作用。
这是它在故事板中的样子:
【问题讨论】:
我可以看看你尝试preferredContentSize
时使用的代码吗?我就是这样做的,所以我很好奇你是怎么尝试的。
嗨!我尝试了一些我认为没问题的常量。
您应该能够计算弹出框内所有视图的宽度和高度,并将其作为首选内容大小返回。
@keithbhunter 但是我必须在所有内容都显示在屏幕上之后才这样做,是吗?我认为在这种情况下宽度很棘手,因为它是由框架设置的。就像我说的。我只想调整高度;)
您可以在viewWillApear
中设置属性,这样就会设置框架。在设置属性并使用默认宽度之前,您可能可以通过断点找到默认宽度。然后你只需计算高度。
【参考方案1】:
您可以在viewWillAppear(_:)
中计算弹出窗口中视图的宽度和高度(或者在这种情况下使用默认宽度),并使用它来设置视图控制器的preferredContentSize
。等到viewWillAppear(_:)
很重要,因此设置了框架。
【讨论】:
以上是关于Popover 适配内容大小 IOS的主要内容,如果未能解决你的问题,请参考以下文章
iOS Popover 或 ActionSheet 导致 UISegmentedControl 按钮变灰
不正确的 Popover 大小 - 在 Popover 中的 Navigation Controller 下显示 UITableViews 时