ios - 当 subview 添加到边界之外时动态调整父 View 的大小

标签 ios objective-c uiview

UIView *parentView  = [[UIView alloc]initWithFrame:[CGRectMake(0,0,100,100)]];
UIView *childView  = [[UIView alloc]initWithFrame:[CGRectMake(0,120,100,100)]];
[parentView addSubview:childView];

上面声明 childView 的代码被添加到 parentView 中 parentView 绑定(bind)之外的位置。无论如何我可以调整 parentView 的大小以使 childView 不再超出范围?我想动态地做到这一点。是否有任何自动功能可用,或者我必须通过计算整体尺寸手动完成。

另一个问题是,在调整 parentView 的大小以适合 childView 之前,似乎 childView 添加在 parentView 的 (0,100) 而不是 (0,120),即使我设置了 [parentView setClipsToBounds:NO];

最佳答案

您可以根据 subview 框架调整父 View 的大小

UIView *parentView  = [[UIView alloc]initWithFrame:[CGRectMake(0,0,100,100)]];
UIView *childView  = [[UIView alloc]initWithFrame:[CGRectMake(0,0,0,120)]];
[parentView addSubview:childView];

parentView.frame = CGRectMake(0,0,childView.frame.size.width,childView.frame.size.height);

关于ios - 当 subview 添加到边界之外时动态调整父 View 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19833350/

相关文章:

xcode - 向 Storyboard 添加新的顶级 UIView 并保留其他 UIView 约束

ios - SwiftUI ButtonStyle - 如何检查按钮是否已禁用或启用?

ios - 在 Xcode 数据模型编辑器中的配置之间移动实体

objective-c - ASIHttpRequest 将 ASync 请求的响应发送回 View Controller

objective-c - 如何以编程方式在 UIView 上显示图片?

ios - 隐藏带有约束和动画的 View

ios - Cocoapod pod 仅适用于指定平台

ios - 标题更改后重复上一个 UITableViewCell

ios - 为不同的 View Controller 设置状态栏颜色

ios - 绘图 mask 影响性能