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

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

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

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

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

    最佳答案

    请记住,只有在加载视图且尚未将其置于 super 视图时才调用viewDidLoad,因此您仍然不知道它的最终帧如何,它只有您在其xib文件中定义的帧(如果有)

    但随后您将其添加到 super 视图中(以多种方式),因此(遵循其autoresizingMask)其帧大小发生了变化,您只能在viewDidAppear方法

    关于ios - Swift iOS的viewDidLoad,viewDidAppear图像控件大小不同,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35392474/

    10-10 20:54