1

私が取り組んでいるアプリがあり、ユーザー登録中にかなりの量のデータ入力があります。アプリの iPad バージョンでは、すべてのデータ入力フィールドを 1 つの画面に表示できるため、これは非常に簡単です。ただし、iPhone バージョンでは、これはきれいに見えず、2 つの画面に分割したいと考えていました。これには、おそらく XIB 間の切り替えが必要になります。私の質問は、単一のビュー コントローラーを使用して、2 つの XIB を単一のビューとして扱うことはできますか? このようにして、この画面の ipad および iphone バージョン用の単一のビュー コントローラーを共有し、すべてのビジネス ロジックを単一のビュー コントローラーに含めることができます。

4

1 に答える 1

1

はい、できます。もちろん、XIB がコントローラーと互換性があることを前提としています (たとえば、コントローラーが実装していないプロパティに XIB が依存していないなど)。2 ページ分割の要件なしでこれを成功させましたが、コントローラー クラスは 1 つだけではありませんでした。少量のデバイス固有のロジックを保持するために、このコントローラーもサブクラス化しました (iPhone 用と iPad 用にそれぞれ 1 つのサブクラス)。独自のクラス。

ページ分割の場合、別のモデル オブジェクトがある場合、各ページの XIB に対して 1 つずつ、2 つのコントローラー インスタンスを使用して、必要に応じて同じデータで動作させることができると思います。

于 2012-09-07T14:04:17.993 に答える