Swift ios viewDidLoad,viewDidAppear图像控件大小不同

时间:2016-02-14 13:43:14

标签: ios swift uiimageview

我注意到在viewDidAppear之前没有给出设置为全宽的UiImageView的正确宽度。

这对我来说有点问题,因为:

  • 我加载了一个可以有任何高/宽的自定义徽标图形
  • 这意味着为了保持比例(和全宽),我设置了一个高度约束来匹配.png文件中的宽度/高度比例

但是,我无法在 viewDidAppear 之前获得真实的图像宽度 - 也无法查看viewWillAppear

我在这里错过了一个舞台/ tehcnique(xcode / ios / swift新手)或者我是否可以制作自己的计算而不依赖于检索uiimageview的宽度?

1 个答案:

答案 0 :(得分:3)

请记住,viewDidLoad仅在您的视图加载时才被调用,但尚未放在超视图上,因此您仍然不知道它是如何最终帧,它只有您在其中定义的帧xib文件(如果有的话)

然后你将它添加到superview(以多种方式),所以(在它的autoresizingMask之后)它的帧大小改变了,你只能在 viewDidAppear方法