这是我目前的情况,当使用此self.feedUiView.frame.size.width
获得宽度时,我有一个全宽UIImageView它给出了584.0,但是当我使用这个UIScreen.mainScreen().bounds.size.width
获得设备屏幕的宽度时,它给了我375.0。尽管图像视图在屏幕上完全拉伸,但imageview与屏幕设备事件不同。UIImageView宽度和UIScreen宽度
谢谢!
这是我目前的情况,当使用此self.feedUiView.frame.size.width
获得宽度时,我有一个全宽UIImageView它给出了584.0,但是当我使用这个UIScreen.mainScreen().bounds.size.width
获得设备屏幕的宽度时,它给了我375.0。尽管图像视图在屏幕上完全拉伸,但imageview与屏幕设备事件不同。UIImageView宽度和UIScreen宽度
谢谢!
确保您已设置适当的约束。
而你应该在viewDidAppear
中计算这个值,因为它在查看出现后被调用。
Viewdidload在它出现之前被调用,所以它有你在接口生成器中给出的基本宽度。
然后它在didload中执行约束并根据约束调整大小,因此它的最终大小可以从viewdidAppear
知道,因为在viewdidload
中它只是计算约束。
希望这将有助于:)
使用自动布局。设置feedUiView超视图的前后约束。
我已经使用自动布局的约束,当我在viewDidAppear帧大小它现在给我正确的宽度 –
这是因为建在故事板视图保持自己的框架viewDidLayoutSubviews
之前。您应该在viewDidLayoutSubviews
或viewDidAppear
中查看。
使用自动布局和基于约束的布局,视图可以继续调整其框架。 viewDllLayoutSubviews & viewDidLayoutSubviews是检查和调整布局的正确位置。
为viewDidlayoutSubviews一旦我有同样的问题。因为我使用的是启动图像,并且仅为5S和6S设置启动图像,而不是6P大小。一旦我为6P尺寸添加启动图像,问题就没有了。
- 祝好运。
获得'viewDidAppear'中的框架并检查 –
也许你还没有使用自动布局/自动调整大小? – avismara
@avismara,我在故事板中添加feedUiView。 –