2013-10-01 89 views
1

升級我的iOS 7應用程序是一項挑戰。 UI是從IB構建的,但不使用自動佈局。iOS 7模擬器vs設備vs Storyboard UI差​​異

在IB上,我取消選中了我的視圖控制器的Extend Edges框。現在,在IB這一切看起來是正確的iOS 7和iOS 6

擴展邊緣選中:

IB Extend Edges

故事板外觀:

IB Button enter image description here

分段控制色調:

enter image description here

在模擬器上,內容仍然延伸到導航欄的後面,除非我使導航欄不透明。它似乎只是忽略了擴展邊緣未經檢查的事實。

模擬器外觀:

enter image description here enter image description here

在iPhone 5運行iOS 7的內容也延伸導航欄下。另外,所有的導航按鈕都具有iOS 6外觀。分段控制也似乎忽略了色調並在黑色上顯示黑色。

iPhone 5運行iOS 7外觀:

enter image description here enter image description here

有人能解釋這裏發生了什麼,以及如何我可以得到IB,模擬了iOS 7的外觀和設備相匹配?

回答

3

我花了好幾天的時間,對我看到的各種顯示器感到震驚。不僅這些按鈕不能正確顯示,而且我還在iOS 6之間的模擬器上獲得了不同的UIView框架尺寸。我還看到了模擬器和iOS 7設備之間的框架差異。

我正在追查一個不同的問題,並意識到我的iOS設備在Xcode 5的目標菜單上出現了兩次。當我在Xcode中安裝了多個iOS SDK時發現這種情況。我從Xcode 5應用程序中刪除了iOS 6.1 SDK,所有的問題都消失了。

我無法確定它與我每次從菜單中選取不同的設備都無關。我知道每個安裝的SDK都會顯示一個。他們的名字相同,所以我從不知道選擇哪一個。

再次,不知道這是否導致我所有的問題,但我現在沒有他們。希望這可以幫助人們節省很多時間來追蹤UI異常。

+0

有同樣的問題,挑選第二個設備(並隨後刪除6.1 sdk符號鏈接)修復它。我的問題是我在iOS7設備上獲得了iOS6 UI ... – Nicolinux