在包含多个子视图的视图中,其中一个子视图应与superview的顶部和底部保持固定的非零距离。在这些图像中,此视图以灰色显示:
根据文档,此视图的掩码应为UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth
。但是,这会导致视图扩展其高度以接管整个superview。如何将视图包含在固定但非零的边距中?感谢。
答案 0 :(得分:2)
UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth
应该有用。
但是,当父视图的高度/宽度变小时(当它变为零时一切都会中断),UIView自动调整大小时会出现错误 - 可能只是UIView高度/宽度不能为负。
我在执行initWithFrame时遇到过这个问题:CGRectZero;如果你在self.bounds是CGRectZero(或其他小的)时使用subview.frame = self.bounds
之类的东西,也可能会发生这种情况。
我的强力调试方法是覆盖setFrame:和setBounds:来添加NSLog。