這是我目前的情況,當使用此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。 –