UIView 调整大小但不是子视图
Posted
技术标签:
【中文标题】UIView 调整大小但不是子视图【英文标题】:UIView resizing but not the SubViews 【发布时间】:2012-03-18 20:42:01 【问题描述】:我有一个 UIView (v1):
---------------
| --------- |
| | | |
| | | |
| | | |
| | UIImage | |
| | View | |
| --------- |
| UIView |
---------------
使用 UIImageView (img1) 作为子视图。
当我要调整 UIView 的大小时:
int img1int = v1.frame.size.height+(img1.frame.size.height - img2.frame.size.height);
v1.frame = CGRectMake(v1.frame.origin.x, v1.frame.origin.y, v1.frame.size.width, img1int+20);
图像随视图调整大小,但我只想调整视图大小,让图像具有正常高度。
int 是我做的一个演算,因为 UIView 的高度与 UIImageView (img1) 的高度相关。
知道如何仅调整 UIView 的大小吗?
非常感谢!
【问题讨论】:
你应该使用 UIScrollView 而不是 UIView 和 setContentSize = CGSizeMake(width, height) 它会正确调整大小 【参考方案1】:在 XIB 文件中的 UIView v1
属性上关闭 "Autoresize Subviews"
。
默认情况下已选中。
这适用于您上面的应用。或者,如果您希望某些孩子自动调整大小而有些不希望,那么您可以在每个孩子上禁用自动调整高度/宽度(“自动调整大小”框中的红色箭头。
然后您的 UIImageView 将停止调整大小。
【讨论】:
以上是关于UIView 调整大小但不是子视图的主要内容,如果未能解决你的问题,请参考以下文章