什么是“autoresize = W + H;”表示UIView对象的NSLog输出

时间:2013-12-04 14:19:38

标签: ios nslog autoresize

代码:NSLog(@"[self view] = %@", [self view]);

输出:[self view] = <UIView: 0xca2bfc0; frame = (0 44; 320 588); autoresize = W+H; autoresizesSubviews = NO; layer = <CALayer: 0xca1d7e0>>

我尝试[[self view] setFrame:CGRectMake(0, 64, 320, 568 + 64)];,但是视图的帧仍然是frame =(0 44; 320 588)。所以我NSLog [自我视图]看看是否有一些自动调整约束。但不知道上述符号是什么意思。

3 个答案:

答案 0 :(得分:3)

您可以将其视为:

  

此视图将通过拉伸其宽度和高度来自动调整大小。

答案 1 :(得分:3)

这是UIView -autoresizingMask的日志描述。基本上,它是您描述调整超级视图时子视图应该执行的操作的方式。它非常强大。

您的当前规则告诉子视图在调整超级视图大小时调整宽度和高度,并保持子视图上下的距离为静态(就超视图坐标系而言)。

答案 2 :(得分:1)

这意味着您当前的自动调整遮罩设置为UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight