Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/122.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 基于多行UILabel的UIView自动调整大小_Ios_Swift_Xcode_Interface Builder - Fatal编程技术网

Ios 基于多行UILabel的UIView自动调整大小

Ios 基于多行UILabel的UIView自动调整大小,ios,swift,xcode,interface-builder,Ios,Swift,Xcode,Interface Builder,问题: 我有一个带有多行UILabel的自定义视图(下图) 然后,这个自定义视图被添加到我的故事板的屏幕上(下图) 这很有效。问题是,在执行过程中,多行标签将动态更改几次,然后蓝色UIView框将不适合。屏幕尺寸小/大也是一个问题 问题:那么如何让UIView根据UILabel的高度自动调整高度?是否可以通过界面生成器和自动布局来完成?(不需要,但我的大多数其他设置都是通过IB完成的) 如果需要更多详细信息,请告诉我。只要您确保自定义视图中的标签固定在所有侧面(标题标签固定到:supervi

问题: 我有一个带有多行UILabel的自定义视图(下图)

然后,这个自定义视图被添加到我的故事板的屏幕上(下图)

这很有效。问题是,在执行过程中,多行标签将动态更改几次,然后蓝色UIView框将不适合。屏幕尺寸小/大也是一个问题

问题:那么如何让UIView根据UILabel的高度自动调整高度?是否可以通过界面生成器和自动布局来完成?(不需要,但我的大多数其他设置都是通过IB完成的)


如果需要更多详细信息,请告诉我。

只要您确保自定义视图中的标签固定在所有侧面(标题标签固定到:superview的前导、顶部、尾部和底部到内容标签;内容标签固定到:superview的前导、底部、尾部和顶部到标题标签)您将让您的superview根据内容更改其高度

另外,请注意,您的superview不需要高度约束,只需将其固定在前端、底部和后端就足够了

我的一个应用程序中的视图几乎相同。我要做的是确保高度随更新而变化:

customView.setNeedsLayout()
customView.layoutIfNeeded()
您还可以在UIView.animate(withDuration:…)块中包装此代码


干杯!

为什么不使用
UIStackView
?您也需要支持iOS 8吗?@dirtydanee您好,不需要支持iOS 8。我如何使用UIStackView解决这个问题?我目前正在查看它,很快就会让您知道。只需将它放在表视图单元格中,然后放入tableview.height=UITableView AutomaticDimensionNote,自定义视图我没有宽度限制,因此无法工作。