看板 MacDev 關於我們 聯絡資訊
剛看到前幾篇推文中有人建議不要用 Storyboard 也不要用 NIB 單純用 code 來實現 UI layout 這應該有這方法的好處,我能想到的就是比較有彈性 而且網路上可看到的程式碼好像也多是用 code 來完成 UI layout 居多 再看過最新的 CS193P 史丹佛的教學影片後 我開始學會怎麼用 Storyboard 的方法來規劃我的 UI layout Storyboard 的好處是可以用 UIViewController 和 Segue 完成大部份的流程 但有些時候還是會被限制住 像要刻自己的 UIView 時 (沒有 controller),就比較麻煩,這時可能要搭配NIB 新導入 XCode4 的 Storyboard 看來好處是很多的 至少視覺方式的呈現,可以比較直覺的了解程式架構,也減少很多程式碼的撰寫 但如果要做比較多課制化的 UI,又會綁手綁腳 不知道各位 programmers 的習慣如何? 討論看看 :) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.232.167
ryanlei:最近接手一個用code刻UI的project 感想是 04/12 14:41
ryanlei:用code會比用滑鼠拉的座標還要精確 04/12 14:41
ryanlei:又如果畫面上的元件多數是常常要變換位子、大小、樣貌的 04/12 14:42
ryanlei:用GUI來做只適合拉少數固定位置的元件 04/12 14:42
ryanlei:然後storyboard規定裝置要iOS 5.0+ 有相容性問題 04/12 14:43
roxx:同意,小元件真的很不好拉,回想起之前拉UITableViewCell裡面 04/12 14:53
roxx:的小元件,真的很不好對準 04/12 14:53
Adonisy:習慣先用 nib....不然之後自已都不好維護 ORZ 04/12 15:48
iwayne:我是都用nib. nib透過屬性設定也能排很準。要變化再用code 04/12 16:47
reon:明明小元件 通通都可以在Xib裡面設定... 04/12 23:28
reon:能用xib做到的本來就盡量要用xib 根本不該把code寫在程式中 04/12 23:29
reon:iOS比Android好的地方就是有非常強大的xib 04/12 23:30
reon:ViewController盡量是處理程序和邏輯 不應該刻太多UI 04/12 23:32
reon:刻太多只是造成後續維護人的痛苦..MVC模式要盡量遵守 04/12 23:32
reon:同意樓上講的 要變化的再用code去寫 其他設定請用xib(nib) 04/12 23:40
reon:基本上我認為一個好的程式 .m 不要超過5百行.. 04/12 23:42
reon:不然要看懂 真的會很浪費時間..當然如果是專門處理CG OpenGL 04/12 23:44
reon:或是一些網路大型程式..單一功能太強大的例外.. 04/12 23:45
reon:否則能盡量切就切... 04/12 23:46
Blueshiva:如果你的App有作多國語言版(其實本來就該作),用xib會很 04/13 00:40
Blueshiva:麻煩,尤其是後來程式改版的時候...話雖如此,我還是用 04/13 00:40
Blueshiva:xib拉UI....Orz 04/13 00:41
iwayne:多國語言時xib會改多份是稍有麻煩,但個人同意reon說法MVC 04/13 08:29
iwayne:盡量遵守。有一次寫一個工程計算機ap,為了換一下UI設計, 04/13 08:32
iwayne:只重新拉了另一個nib,然後把關連性用線拉一拉,code都沒改 04/13 08:32
iwayne:就能正常運行。而且甚至能動態切UI.. 04/13 08:34
dreambird:mvc只是要把這三個分開吧,我都用繼承UIView手刻 04/13 18:23
dreambird:用拉的,當你nib疊了一堆東西要改不是很麻煩嗎 04/13 18:24
reon:疊了很多東西@@?通常1個nib會用多個view 不是很正常? 04/14 01:54
reon:不管在iOS還是Android上UI都盡可能在XML(nib)外部設計就知 04/14 01:59
reon:繼承當然可以 繼承nib還是可用呀 可以減少很多設定 04/14 02:03
reon:你只要把重點另外寫code 程式可讀性和後繼維護速度都可增加 04/14 02:05