4

iPhone用のXibがあり、iPad用の同様のビューが必要ですが、iPadサイズのみです。

これを行う最善の方法は何ですか?両方のビューを同じ Xib に配置して、どちらを表示するかを指定できますか?

または、2 つの Xib ファイルと 2 つのクラスを作成する必要がありますか?

4

3 に答える 3

4

私は1クラスを使用することになりました。両方の XIB ファイルのファイル所有者をこの同じクラスに設定しました。

XIBファイルの名前を使用しました

だから私は2つのxibFiles、iPadXib.xibとiPhoneXib.xibを持っています

NSString *nibFileName = (iPadVersion) ? @"iPadXib" : @"iPhoneXib";

ViewControllerName *vc = [[ViewControllerName alloc] initWithNibName:nibFileName bundle:nil];
于 2012-12-03T18:36:58.990 に答える
2

または、2 つの Xib ファイルと 2 つのクラスを作成する必要がありますか?

実際には、3 つのクラスと 2 つの xib を使用します。このような:

  1. 私のクラス
  2. MyClass_iPhone: MyClass
  3. MyClass_iPad: マイクラス

そして、2つのxib。これにより、柔軟性が大幅に向上します。MyClass に共通のロジックを保持し、iPhone および iPad バージョン用に他の 2 つをサブクラス化します。

于 2012-11-21T15:31:32.810 に答える
1

iPhone と iPad の両方が必要な場合は、ユニバーサル アプリを作成します。XIB を 1 つだけ作成し、すべてのコントロールを 1 回だけ作成します。個別に行う必要はありません。フレームをコーディングで描画します。つまり、iphone と ipad の両方で別々のフレームを作成します。

于 2012-11-21T15:52:19.480 に答える