簡體   English   中英

沒有故事板或xib文件的iOS Universal App

[英]iOS Universal App without storyboard or xib file

我有一個關於通用應用程序的問題。 我的應用程序不會有故事板或xib文件。 沒有它可以編寫通用的iPhone / iPad應用程序嗎? 我找到了一些如何使用 storyboard創建通用應用程序的教程,但我不希望(我不能)在我的項目中使用此功能。

如果有可能我該怎么辦? 如果我只需要在ViewControllers中進行更改? 我開始這樣做,我不會改變舊項目,所以我可以做任何事情 - 我應該學習什么/我應該記得什么?

我的目標是iOS 5。

編輯:

我在資源文件中有一個屏幕信息,我的rootViewController或任何其他ViewController將在編譯時創建,所以我不能有xib文件,我不能把按鈕放在xib與Interface Builder因為我甚至沒有我知道那里有多少按鈕。 我不知道有多少屏幕,直到我在我的項目中運行。

如果沒有Interface Builder ,您不僅可以編寫任何類型的iOS應用程序,它實際上更加可測試和靈活。 在IB風格項目中,一些auto layout技巧很難(不可能?)。

有一個令人印象深刻的名為Masonry庫包含了NSLayoutContraint語法。 這使得子類視圖非常令人愉快,而不必使用丑陋的VFL或令人難以置信的詳細NSLayoutContraint語法(甚至不會解決幀設置......煩惱!)。 IB風格的應用程序還會促進糟糕的軟件開發實踐和反模式(只是在視圖控制器中呈現所有內容。不需要分離關注!)。 此外,由於合並問題,在使用Nib,Xib和Storyboard時,更難以在更大的團隊(IMHO甚至是小團隊)上工作。

最重要的是,當您以這種方式編寫代碼時,您UIResponder深入地了解您正在使用的類( UIViewUIResponder等)(再次恕我直言)。 有一篇有趣的文章更詳細地概述了其中一些問題: http//doing-it-wrong.mikeweller.com/2013/06/ios-app-architecture-and-tdd-1.html這絕不是唯一討論這個問題的文章。 此外,這將有助於您的應用程序委托: 創建一個基於窗口的通用iPhone應用程序,而不生成xib文件

這當然是可能的,我在我發布的許多應用程序中只使用過一次storyborads。 至於不使用XIB,我不確定你為什么要這樣做。 您可以在init方法中在運行時布置您的視圖,但我覺得這只會讓您自己過度努力。 您可以為iPad設置XIB,為iPhone設置一個XIB,這樣您就可以專門為每個設備定制UI。

也許如果你詳細了解為什么要對自己強加這個要求,我們可以討論是否值得努力走下去。

祝好運。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM