2015-02-11 126 views
1

我一直在試圖弄清楚這件事情是如何工作的。它非常隨意,我不知道還有什麼可以嘗試。我在這個問題上查找了多篇文章,每個人都只是說改變規模。改變規模並沒有幫助,它與這裏發生的事情無關。我不確定這是否與Xcode的底部有關,您可以在其中更改尺寸(任何對任何/任何對比常規高度等)。我已經向我的移動開發教師詢問了在學校的情況,他也不能也不知道。任何幫助將不勝感激!!下面iOS模擬器無法在Xcode 6中正確顯示

圖片:

http://tinypic.com/r/281fw5w/8

回答

0

您的問題不結垢。你需要看的是自動佈局和約束。

您可以使用界面構建器右下角的圖標來獲取它們或控制從視圖控制器(如按鈕,標籤等)拖動到包含視圖(或任何其他視圖控制器這個問題。)通常,主視圖窗口本身。當你釋放時,你現在可以添加約束來將元素「附着」到相對其他元素。例如,您可以將左側的東西和右側的東西附在右側。現在,無論實際設備屏幕的尺寸如何,這些元素都會出現在相對於設備屏幕的位置。

+0

我一開始並不知道你在說什麼,但它讓我尋找了自動佈局和約束條件,在閱讀了幾篇文章並看了一些教程後,我終於明白了。非常感謝!!我也發現這個視頻非常有幫助。 https://www.youtube.com/watch?v=IwSTXY0awng再次,我真的很感謝幫助:) – Bryner 2015-02-11 04:53:09

+0

我的榮幸。 :) – 2015-02-11 09:46:03

0

問題是,從您的角度來看,元素的位置對於您在「界面」構建器中看到的畫布是正確的,但是一旦應用程序運行,真實的畫布就會有不同的尺寸。

要管理UI元素的位置,大小和其他屬性,有一個稱爲AutoLayout的系統。 它很自然,因爲它與自然語言相似。例如「我希望此元素位於屏幕中間。」 或 「我希望此元素距離左上角20個像素,距離元素上方元素57個像素。」

通過組合這些規則,您基本上可以創建一組佈局約束,這些佈局約束在運行時應用於視圖層次結構,而視圖佈局正確。 Autolayout允許非常複雜的佈局。

另一方面,您需要考慮到您可能希望您的應用在從3.5英寸iPhone到iPad空氣的所有形狀因素中看起來很好。由於這些設備的尺寸差別很大,Apple推出了一種名爲的抽象,尺寸類別爲

大小類是一個混凝土大小的抽象。具體iOS設備具有混凝土尺寸。但在自然語言中,你經常會說它很大,或者很小,或者說是正常的。這是抽象大小類別使用的級別。

對於每個尺寸等級,您可以擁有一組特定的自動佈局約束。

因此,通過結合AutoLayout和SizeClasses的,Apple解決了問題:如何擁有一個應用程序,但仍然可以適應特定外形因素,並且可以調整其佈局。

在Xcode6中,所有故事板/ xib文件都具有自動佈局& sizeclasses默認情況下處於啓用狀態。界面構建器爲您提供了一個舒適的環境,您可以通過爲每個尺寸等級組合創建約束來設置佈局。

+0

非常感謝你的解釋。我明白它現在是如何工作的,並且發現這是多麼令人難以置信的強大。謝謝! – Bryner 2015-02-11 04:54:50