2012-10-15 99 views
3

我正在嘗試做一件看起來很簡單的事情,但由於xcode中的新自動佈局,我很難理解約束條件是怎麼回事。iPhone5的Xcode約束搞砸了我

我想要做的事情是在主視圖子視圖 基本處於頂部有一個滾動視圖,並在與

在iPhone 5之間

我想沒有空間底部的一個的UIView它是
400像素
148px

和iPhone 4:
358px
112px

每次我加入交流onstraint另一個消失或其他人不使我改變高度
我不知道這是可以解釋的或者什麼,但任何幫助是值得歡迎

+2

這不會回答你的問題,但我鼓勵你在Auto Layout上觀看WWDC會話視頻。 AL確實需要進行大量的調整,但我認爲一旦你對此感到滿意,你會喜歡它的大部分任務。 –

+0

我開始觀看他們,目前我禁用了自動佈局,但當我明白它是如何工作的時候,我一定要使用它 – Mathieu

回答

3

我討厭新自動版式在Interface Builder。我做的第一件事就是禁用它。只需點擊文件的所有者>顯示文件檢查器,然後取消使用AutoLayout

+0

這就是我目前所做的事情,因爲我有一個星期五的截止日期,而且我已經在自動佈局上丟失時間 – Mathieu

+0

真的嗎?接受的答案?只是適應,約束不是那麼混亂。 – ullstrm

+0

@Spoek他們在Xcode 4中很混亂。 – Sulthan

0

如果您想爲約束固定高度。只需在界面構建器中選擇您的元素,然後手動添加高度約束。 (底部的小加號,然後是高度)。

如果你想要固定的高度,只需製作這些約束的網點並操縱它們的常量值。

1

我發現有關自動調整大小和尺寸類的問題是,他們的目的是處理複雜的UI佈局,所以:

  1. 如果你正在構建的UI是作爲附帶的應用程序一樣簡單通過蘋果,你不必使用它們讓所有設備都能正常工作;
  2. 如果用戶界面非常複雜,最終會遇到很多限制,最終沒有人能夠弄清楚是什麼。直到在嚴格的期限內完成一些巨大的需求變更纔是可以的,那麼唯一的解決方案將會隨着時間的推移而發揮作用。

使用固定設計的自動佈局來構建某些東西是相當愉快的,它是如此優雅的方式,一切似乎都在正確的位置,完全在您的控制之下,而且您無需編寫任何代碼。但只要需要做出改變,搞清楚所有約束之間的關係就比閱讀代碼更困難。

對於一些真正複雜的多設備佈局來說,新技術可能是必須的,但我認爲還有很多有用的應用程序的空間,它們只使用自動調整掩碼和代碼。這樣說可能有點可恥,但基本上,我討厭自動佈局。