2010-07-27 19 views

Répondre

1

Vous pouvez remplacer les en-têtes de section d'un UITableView en mettant en œuvre la méthode suivante dans le UITableViewDelegate:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section

Vous voudrez probablement aussi de mettre en œuvre la méthode de la hauteur pour assurer correctement vos nouveaux écrans d'affichage de la section:

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section

pour changer la couleur de l'en-tête de section, créez un UIView avec un UIImageView en son sein, et un UILabel pour le t ext de la section. Ajoutez une image à UIImageView pour savoir à quoi vous voulez que l'arrière-plan ressemble. Autant que je le sache, vous ne pouvez pas manipuler la couleur de la vue en coupe.

4
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { 
    // create the parent view that will hold header Label 
    UIView* customView = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, 25.0)]; 

    // create the button object 
    UILabel * headerLabel = [[UILabel alloc] initWithFrame:CGRectZero]; 
    headerLabel.backgroundColor = [UIColor blackColor]; 
    headerLabel.opaque = NO; 
    headerLabel.textColor = [UIColor whiteColor]; 
    headerLabel.highlightedTextColor = [UIColor whiteColor]; 
    headerLabel.font = [UIFont boldSystemFontOfSize:20]; 
    headerLabel.frame = CGRectMake(0.0, 0.0, 320.0, 22.0); 

    // If you want to align the header text as centered 
    //headerLabel.frame = CGRectMake(150.0, 0.0, 300.0, 44.0); 

    headerLabel.text = @"Name of header"; 

    [customView addSubview:headerLabel]; 

    return customView; 

}