UITableView: définir par programmation de la source de données

Dans mon iPhone j'ai un UIViewController qui a un UITableView et un autre UIView, dans son fichier xib, le point de vue de la xib contient à la fois la UITableView et les autres UIView. Deux sont liés comme IBOutlets à la les vues appropriées dans le fichier xib.
Quand je veux mettre la source de données par programmation pour la UITableView j'ai créer une méthode de ce genre dans la UIViewController:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil tableDataSource:(id)dataSource{
if ((self = [self initWithNibName:nibNameOrNil bundle:nibBundleOrNil])) {
    //Custom initialization
    self.inventoryTableView.dataSource = dataSource;
    //[self.inventoryTableView reloadData];
}
return self;}

puis-je mettre en œuvre les méthodes suivantes dans une autre classe de la mienne, nous allons l'appeler B:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;

Enfin je alloc+init B et de passer à l'instance de la méthode initWithNibName:bundle:tableDataSource: de la création de la UIViewController. Tous les points de vue apparaissent dans le simulateur, mais la source de données méthodes ne semblent pas être appelé.
- Je faire quelque chose de similaire avec un autre contrôleur et des œuvres, mais c'est un UITableViewController et de la TableView est le contrôleur de la vue. Est-il possible que le fait d'être une sous-vue-je définir la source de données dans une autre méthode différente de la initWithNib?

Mise à JOUR:
En mettant la source de données assignation dans le viewDidLoad: méthode, j'ai été en mesure de le résoudre. Il me semble que même après l'appel de [self initWithNibName:nibNameOrNil bundle:nibBundleOrNil] les sous-vues de la vue principale ne sont pas correctement inited

OriginalL'auteur rano | 2010-07-30