Что я делаю (если контроллер вида можно легко использовать для обоих), так это создаю соответствующие файлы.
MyViewController.h
MyViewController.m
MyViewController~ipad.xib
MyViewController~iphone.xib
Установите File's Owner
в обоих файлах xib
на UIViewController
создайте подкласс и подключите представление + все, что вы хотите подключить.
Когда я запускаю свой контроллер представления, это все, что требуется
MyViewController *viewController = [[MyViewController alloc] init];
// OR
MyViewController *viewController = [[MyViewController alloc] initWithNibName:nil bundle:nil];
Документы Apple для UIViewController утверждает, что если вы предоставите XIB с тем же именем, что и контроллер представления, он будет загружен.~ipad
и ~iphone
гарантируют, что загружен правильный xib.