Похоже, вам просто нужно найти правильное место для инициализации вашего табличного представления, и его нет в cellForRowAtIndexPath, по причинам, которые вы упомянули.Предполагая, что вы создали свой UITableView в xib-файле, вы можете создать выход в исходном коде (см. Ниже), а в InterfaceBuilder либо создать экземпляр вашего контроллера в xib-файле, либо использовать существующий экземпляр (например, владелец файла)., может быть).В IB подключите эту розетку к столу, удерживая нажатой клавишу Control.Когда xib загружен, UIKit заполнит указатель на ваше табличное представление, с которым вы затем можете сходить с ума во время viewDidLoad.Решает ли это вашу проблему?
@interface MyController : UIViewController<UITableViewDelegate,UITableViewDataSource>
{
UITableView * myTable;
}
@property (nonatomic,assign) IBOutlet UITableView * myTableView;
@end
...
@implementation MyController
@synthesize myTableView;
-(void)viewDidLoad
{
// do some crazy initialization with self.myTableView!
}
@end