Если я правильно понимаю ваш вопрос, похоже, у вас есть подкласс UITableViewController, и вы хотите изменить его на подкласс UIViewController.
Есть несколько вещей, которые вам нужно пройти, чтобы сделать это, и, надеюсь, я не забуду ни одного из шагов.
Сначала в файле @interface измените суперкласс ваших классов, выполните протокол источника данных и делегируйте протокол и, наконец, объявите выход для UITableView:
@interface YourViewControllerName : UIViewController <UITableViewDataSource, UITableViewDelegate>
{
}
@property (nonatomic, retain) IBOutlet UITableView *myTableView;
Перейдите к файлу реализации и @synthesize свойство tableView:
@implementaion YourViewControllerName
@synthesize myTableView;
Вам также нужно изменить назначенный инициализатор, если вы создаете свой viewcontroller программно и выполняете какие-либо настройки во время его инициализации (похоже, это не так, как вы упомянули, имея файл NIB, но здесь это так. в любом случае):
- (id)initWithStyle:(UITableViewStyle)style
{
self = [super initWithStyle:style];
if (self) {
// Custom initialization
}
return self;
}
Скопируйте методы делегата табличного представления и источника данных из старого контроллера представления, а также любой пользовательский код инициализации для вашего источника данных (NSArray *). Обычно это создается в вашем методе viewDidLoad:
.
Перейдите к вашему файлу NIB (тот, который содержит только объект табличного представления). Добавьте объект UIView в перо и переместите объект табличного представления как его подпредставление.
Соедините UIView с выходом представления вашего владельца файла и UITableView с выходом myTableView владельца файла путем перетаскивания из владельца файла к соответствующим объектам. Сделайте владельца файла вашим источником данных таблицы делегата и делегатом, но управляйте перетаскиванием из таблицы в владелец файла.
И если я не забуду что-то, это все, что вам нужно сделать.
Не стесняйтесь задавать любые вопросы в разделе комментариев.
Приветствия
1027 * Рог *