アプリをユニバーサルに変換した後:-

XIB
同じカスタム クラスで2 つの異なるを作成しました。怒鳴る画像のように:-
iphone->xib-select fileOwner

ここで、PhotoViewController_ipad という名前の Ipad 用の新しい xib を作成します。新しく作成された XIB を開くだけです-> [ファイルの所有者] をクリックします---> 次のように表示されます:-

その右側の n 側 カスタム クラスの空白をそこに置くPhotoviewCintroller
ファイル所有者をビューに接続します

これで、Iphone 用に 1 つ、Ipad 用に 1 つという同じクラスの 2 つの Xib ができました。次のようなコーディングを使用してこれを実現できます。
アプリが Delegate.m ファイルに読み込まれている間に、iPhone または Ipad を確認する必要があります。
#define isiPhone (UI_USER_INTERFACE_IDIOM() == 0)?TRUE:FALSE
yourApplicationAppDelegate.h クラス
#import <UIKit/UIKit.h>
@class PhotoViewController;
@interface yourApplicationAppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) PhotoViewController *viewController;
@end
yourApplicationAppDelegate.m クラス
#import "yourApplicationAppDelegate.h"
#import "PhotoViewController.h"
#define isiPhone (UI_USER_INTERFACE_IDIOM() == 0)?TRUE:FALSE
#define isiPhone5 ([[UIScreen mainScreen] bounds].size.height == 568)?TRUE:FALSE
@implementation yourApplicationAppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
if (isiPhone) {
if (isiPhone5)
{
self.viewController = [[PhotoViewController alloc] initWithNibName:@"PhotoViewController_iphone5" bundle:nil];
}
else
{
self.viewController = [[PhotoViewController alloc] initWithNibName:@"PhotoViewController_iphone" bundle:nil];
}
}else{
self.viewController = [[PhotoViewController alloc] initWithNibName:@"PhotoViewController_ipad" bundle:nil];
}
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
編集
もう1つ考えられるのは、iphone5のコードも作成している場合は
#define isiPhone5 ([[UIScreen mainScreen] bounds].size.height == 568)?TRUE:FALSE
、回答を編集したときに確認することもできるということです