【发布时间】:2013-11-17 22:28:42
【问题描述】:
我有一个UImageView,其初始尺寸从xib 设置为:
Y:0,高度:406。
在viewDidLoad,根据条件我使用这段代码:
self.mainAdImg.frame = CGRectMake(self.mainAdImg.frame.origin.x, self.mainAdImg.frame.origin.y + OFFSET, self.mainAdImg.frame.size.width, self.mainAdImg.frame.size.height);
在哪里mainAdImg is the UIImageView, and OFFSET is 20.0f
所以,我预计图像会下降20.0。
相反,新值变为:
Y : 20 (correct), height: 426 (not expected)
为什么高度会变化?
编辑:
我没有使用自动布局。
我记录原点,高度如下:
NSLog(@" Y : %f, height : %f",self.mainAdImg.frame.origin.y,self.mainAdImg.frame.size.height);
【问题讨论】:
-
您使用的是什么自动调整大小/布局?你是如何记录帧的?
-
self.mainAdImg.frame.size,height 应该是 self.mainAdImg.frame.size.height 吧?
-
忽略错字,问题是为什么高度会改变?
-
在改变帧大小之前你得到的高度是多少?在更改帧大小之前,将 NSLog 打印出高度。
-
自动调整大小?在 iPhone 5 上运行但 XIB 是 iPhone 4?
标签: ios uiimageview frame