2014-11-14 63 views
0

我對iOS開發有感覺,我想獲得反饋。故事板/界面生成器與iOS開發的完整代碼視圖

故事板/界面生成器乍一看是非常棒的工具。事實是,除了快速的原型和非常簡單的用戶界面,我總是感覺被阻止使用它們。這個問題提供了一個很好的例子:how can I use one storyboard for 4" and 3.5" iphone screens with autolayout (ios6 + ios7)?

我正在考慮編寫我所有的觀點。主要是因爲它會讓我實現一些邏輯,如元素的相等間距。通過GUI工具,AFAIK無法通過跨設備的方式進行操作。

我的問題是:Storyboard/IB是否支持高級視圖佈局?如果你這樣做,你通常如何編寫你的視圖:擴展UIView /調整控制器?

編輯:接受的答案鏈接很好。有興趣的讀者還可以看看Apple的Auto Layout Guide相關示例:https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/AutoLayoutbyExample/AutoLayoutbyExample.html#//apple_ref/doc/uid/TP40010853-CH5-SW7

+0

這個問題對於單個答案來說太寬泛了。是否有您希望支持的特定高級視圖佈局,您無法弄清楚如何在IB中創建?請注意,Xcode 6爲故事板提供了新功能,而不是解決該問題。 – Kevin 2014-11-14 16:11:29

+1

您可以在故事板中做等間隔,但您需要在視圖之間添加間隔視圖來完成此操作(如果您支持多種屏幕尺寸,我認爲這也是在代碼中執行此操作的最佳方式)。至於你以前的問題,最簡單的方法是讓IBOutlets用於頂部約束和高度約束,並在代碼中改變它們的常量值(這樣混合式的故事板和代碼方式)。故事板可以支持相當先進的佈局,但每種情況都不相同,您必須決定哪種最適合您。 – rdelmar 2014-11-14 16:25:51

回答

1

在iOS 8之前,使用Interface Builder構建複雜佈局要困難得多。你本質上侷限於伸展或釘住邊緣。現在,您可以構建適應尺寸類別的佈局,並根據設備的寬度和高度更改佈局或約束條件。即使在IB無法處理的非常困難的情況下,我仍然最終在XIB中構建大塊視圖,然後手動佈置這些塊。

TLDR;只要你知道如何使用它的所有功能,界面生成器將在99.9%的時間內有幫助。

相關問題