これが私のセットアップです。一度サブクラス化UIViewController
して、すべてのウィジェットで実行できるすべてを処理する単一の「ウィジェット」ビュー コントローラーを作成しました。次に、各ウィジェットの Widget View Controller をサブクラス化しました。これは、各ウィジェットが独自の、しばしば複雑な一連の機能を処理するためです。
シーンにアクティブな各ウィジェットを格納するウィジェットの配列を作成したいのですが、適切なウィジェットを初期化して配列に格納する方法がわかりません。最初はできると思っていまし [widgets addObject:[[Widget alloc] initWithNibName:widgetName bundle:nil]];
たが、個々のウィジェットの initWithNibName 関数を完全に無視し、抽象化された Widget クラスに直接進みます (これは、私がロードしているクラスであるため、理にかなっています...)。
各ウィジェットが独自のサブクラスによって初期化された状態で、クラスをこの配列に適切にロードするにはどうすればよいですか? 必要に応じて、構造変更もお気軽にお勧めします。