2010-03-07 2 views
0

J'essaie d'ajouter un contrôle de vue personnalisé à un UITableViewCell personnalisé que j'ai conçu dans le constructeur de l'interface.Comment ajouter une sous-vue personnalisée à une classe dérivée UITableViewCell lorsque le UITableViewCell est chargé en utilisant loadNIB

Maintenant, pour charger UITableCellView J'utilise

NSArray * loadedViews = [[NSBundle mainBundle] loadNibNamed: @ "CustomSearchResultsCell" propriétaire: auto Options: néant];

Quelle méthode de la classe CustomSearchResultsCell sera appelée Nib charge la vue et l'initialise. J'ai essayé d'utiliser viewDidLoad, mais UITableViewCell ne répond pas à cette méthode. De même, initWithStyle n'est pas appelé dans ce cas.

TIA Nitin

Répondre

3

Vues chargées à partir d'une pointe sont initialisés avec initWithCoder:, que vous pouvez mettre en œuvre de manière similaire comme initWithFrame:.

+0

Cela a fonctionné parfaitement, merci – user210504

0

En outre, jetez un oeil à l'exemple de code d'Apple appelé AdvancedTableViewCells. Dans cet exemple, ils utilisent le code suivant pour charger la cellule de vue de table à partir de XIB:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    static NSString *CellIdentifier = @"ApplicationCell"; 

    ApplicationCell *cell = (ApplicationCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

    if (cell == nil) { 

     [[NSBundle mainBundle] loadNibNamed:@"IndividualSubviewsBasedApplicationCell" owner:self options:nil]; 
     cell = tmpCell; 
     self.tmpCell = nil;  
    } 

    return cell; 
} 
Questions connexes