/ / 1つのストーリーボード上のすべてのビューコントローラ - ios、ストーリーボード、uistoryboard、xcode9、xcode-storyboard

1つのストーリーボード上のすべてのビューコントローラ - ios、ストーリーボード、uistoryboard、xcode9、xcode-storyboard

XCodeを5回と6回に戻すと、すべてのView Controllerを1つのストーリーボードにまとめることはお勧めできませんでした。私の経験から、XCodeは遅くなりました。

今日の状況はどうですか? XCode 9でこれを処理できますか? Appleはすべてのものを一つの単なるストーリーボードに入れることを正式に推奨していますか?

回答:

回答№1は1

私の意見では、モジュールやフローなどのアプリを分割する方が良いと考えています。 オンボーディング ストーリーボードにはログイン/登録情報が含まれています 設定 ストーリーボードには、設定メニューとサブメニュー(すべてのView Controller)が含まれています。 さらに、私は決して作成しない UITableViewCell または UICollectionViewCell 直接ストーリーボードで、私は専用の .xib ファイル。 View Controllerのインスタンス化とストーリーボードの処理(もっと一般的な方法で)を処理するのと同じ@Prashant Tukadiyaメソッドを使用します。

今日の状況はどうですか? XCode 9でこれを処理できますか?

私は1〜2年前に1つのストーリーボード内のすべてのビューコントローラを含むプロジェクトに取り組みましたが、最近XCode 9で開いていますが、それでもまだ非常に遅いです。


回答№2の場合は1

あなたが好きなときに、アプリケーションが大きくなり、ストーリーボードが開いたり/ゆっくりと保存されたりすると、メインのストーリーボードのビューコントローラの数が増えてアプリの機能が分割される


回答№3の場合は1

ストーリーボードはモジュール単位で分割する必要があります。それ以外の場合は、ストーリーボードの1回の変更でプロジェクトに多くの時間がかかります。

私のsuggesionです Storyboard Referenceを使用してsegue経由で接続することができます

https://www.raywenderlich.com/115697/ios-9-storyboards-tutorial-whats-new-in-storyboards

あなたがストーリーボードからアクセスするためにあなたのすべてのviewcontrollerで抽象メソッドの練習を持っている場合は、より良い解決策が必要です

と同じように

//--------------------------------------------------------------------------------

// MARK: - Abstract Methods

//--------------------------------------------------------------------------------

public class func viewController () -> LoginVC {
return StoryBoard.main.instantiateViewController(withIdentifier: StoryBoard.controller.LoginVC) as! LoginVC
}


//--------------------------------------------------------------------------------
// Now access it with  LoginVC.viewController() and do push or present whatever your operation you requred

私はすべてを常時ファイルで管理しています

public struct StoryBoard {

static let main = UIStoryboard.init(name: "Main", bundle: nil)

struct controller {
static let LoginVC   =   "LoginView"

}

}

回答№4の場合は1

私は分割された異なるストーリーボードを作成しますそれらに参照を渡します(XCodeのStoryboard参照)。それらをより整理しておくのに役立ちます。また、GitHubにR.swiftという素晴らしいライブラリがあります( https://github.com/mac-cain13/R.swift)のように、Androidのリソースを持つファイルです。イメージ、ペン、ストーリーボードなどのすべてのリソースを解析し、名前でリソースを呼び出すときに間違いの可能性を減らします。