2011-09-22 9 views

Répondre

2

Vous pouvez changer la couleur d'une cellule dans la méthode de délégué UITableView comme ceci:

- (UITableViewCell *)tableView:(UITableView *)tableView 
     cellForRowAtIndexPath:(NSIndexPath *)indexPath { 

    UITableViewCell *cell = [tableView 
       dequeueReusableCellWithIdentifier:@"UITableViewCell"]; 

    if (!cell) {   
     cell = [[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle 
             reuseIdentifier:@"UITableViewCell"]autorelease]; 
    } 
} 

// Ici, vous pouvez changer de couleur/fond de votre cellule avec tout ce que vous voulez

// changer la couleur:

[cell setBackgroundColor:[UIColor blackColor]]; 

// changer l'image de fond d'une cellule:

UIImage *theImage = [UIImage imageNamed:@"ximage.png"]; 
    [[cell imageView] setImage:theImage]; 

}

+0

Merci, mais comment pourrais-je changer la couleur de la barre de navigation? Je ne l'ai pas ajouté dans Interface Builder; il a été créé par programme. –

+0

UINavigationController * myNavController; myNavController.navigationBar.tintColor = [UIColor redColor]; –

+0

exactement ce que je cherchais. Je viens de le mettre dans mon application delegate.m, et cela a fonctionné parfaitement. Merci! –

0

Pour changer la couleur d'une cellule, vous devez créer votre propre sous-classe de UITableViewCell. Et pour changer la couleur d'arrière-plan de la barre de navigation, je crois qu'il est

self.navigationItem.backgroundColor = [UIColor redColor]; 

Merci,

macintosh264

0

Vous pouvez le faire en réglant le backgroundView à la table et backgroundColor du contentView d'un cellule. Voir this pour commencer. La barre de navigation peut être effectuée en sous-classant UINavigationBar et en remplaçant la méthode drawRect.

P.S: Tous les sujets ci-dessus sont de base sur lesquels des tutoriels sont jonchées partout sur le web et le débordement de pile lui-même. Essayez de chercher et de lire.

0

noter que depuis iOS3 vous ne définissez pas la couleur de fond des cellules dans

  • (UITableViewCell *) tableView: (UITableView *) tableView cellForRowAtIndexPath: (NSIndexPath *) indexPath

vous définissez dans

  • (void) tableVie w: (UITableView *) tableView willDisplayCell: (UITableViewCell *) forRowAtIndexPath cellulaire: (NSIndexPath *) indexPath

comme indiqué ici

http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableViewCell_Class/Reference/Reference.html