2013-10-30 38 views
0

我正在構建一個在UINavigationBar下面具有UIImageView的應用程序,如以下屏幕截圖所示。 screenshotiOS - 設置自動調整約束前後的不同bounds.size值

在設置自動調整約束之前,我記錄了邊界的大小,它說大小是320x505,這很合理,因爲導航欄和狀態欄佔用了64點。

約束都是這樣我才設置它們:

enter image description here

後來,我已經添加了「內交」像下面的約束這段時間的一部分,而在記錄邊界大小,它給了我320x569,它考慮到狀態欄和導航欄。

enter image description here

我敢肯定的UIImageView的「真實」的大小沒有增加,因爲當我打開一個圖像,它只是顯示圖像就好了,有沒有什麼區別,但我不確定爲什麼發生這種情況

所以我的問題是什麼導致這一點,以及如何解決它?

在此先感謝!

回答

2

第一個自動調整大小模式設置(其中包括)固定頂部邊距&固定底部邊距&固定高度。基本上,您告訴視圖的頂部和底部具有相同的邊距,但不能修改其高度,這是非常不可能的,因此界面構建器將優先考慮底部固定彈簧。

第二種情況,有固定的最高保證金&固定的底部保證金&靈活的高度,在整個內容上延伸您的圖像。如果你還沒有取消選中視圖控制器的選項(Extend在頂部欄下),全部內容是568(對於4英寸設備,這是你的情況)(在ios 7上,如果你有這個選項選中,viewcontroller的視圖的y原點在導航欄下&狀態欄,位於最上角)。

如果取消選中頂部欄選項的擴展中,視圖 - 控制的觀點將從64

+0

嗨拉杜開始,我並取消下頂欄選項的擴展,而這正是導致我的問題,謝謝你的解釋! –

+0

沒問題,很高興有幫助! –

相關問題