После создания универсального приложения (см. Пост @ Suriya выше) вы должны выяснить в делегате приложения, есть ли у вас iPad или iPhone. Здесь - это простое учебное пособие для этого.
Да, вам понадобятся отдельные перья и изображения для приложения для iPad. Но нет, не весь код должен меняться. Вы можете просто использовать наследование классов.
Пример:
У вас есть файл MyTableViewController.h и .m, которые работают на iPhone. В этой таблице есть пользовательская ячейка MyTableViewCell. Теперь вы хотите, чтобы приложение для iPad получало ту же информацию, но отображало большую таблицу и большую ячейку таблицы. Затем вы подклассифицируете классы iPhone следующим образом: MyiPadTableViewController : MyTableViewController
и MyiPadTableViewCell : MyTableViewCell
. Таким образом, у вас есть доступ ко всем созданным вами функциям в родительском классе, но вы можете переопределить способ отображения информации.
Если у вас есть функция - (void)doSomething:(id)foo;
в вашем классе MyTableViewController, вы можете использовать ее в своем классе MyiPadTableViewController без написания дополнительного кода или переопределить ее при необходимости. Дело в том, что вам не нужно менять код в двух местах, так что это значительно облегчает жизнь.