Domanda

ho abbastanza semplice domanda semplice (lo spero). Come faccio a cambiare la sezione di colore di intestazione in un UITableView dal blu al nero trasparente predefinito? Grazie in anticipo.

È stato utile?

Soluzione

è necessario implementare questo metodo nel protocollo UITableViewDelegate:

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

Questo è il link al documentazione

... e fare qualcosa del genere (sotto nel vostro colore):

UIView *sectionView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, 22)] autorelease];
[sectionView setBackgroundColor:[UIColor blackColor]];
return sectionView;

È inoltre possibile utilizzare il numero intero sezione per i colori alternativi o qualcosa di simile. Credo che l'altezza di default per le sezioni è di 22, ma si può fare quello che vuoi. E 'questo ciò che si intende per la tua domanda? Spero che questo aiuti.

Altri suggerimenti

Questa è una vecchia questione, ma credo che le esigenze di risposta per essere aggiornato.

Questo metodo non comporta definire le proprie viste personalizzate.
In iOS 6 e fino, si può facilmente cambiare il colore di sfondo e il colore del testo definendo la

metodo delegato
- (void)tableView:(UITableView *)tableView 
        willDisplayHeaderView:(UIView *)view 
        forSection:(NSInteger)section
.

Ad esempio:

- (void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section
{
    // Background color
    view.tintColor = [UIColor blackColor];

    // Text Color
    UITableViewHeaderFooterView *header = (UITableViewHeaderFooterView *)view;
    [header.textLabel setTextColor:[UIColor whiteColor]];

    // Another way to set the background color
    // Note: does not preserve gradient effect of original header
    // header.contentView.backgroundColor = [UIColor blackColor];
}

Preso dal mio post qui: https://happyteamlabs.com/ blog / ios-how da personalizzare-tavolo-view-header-e-footer-colori /

- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 
   {
     UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0,tableView.bounds.size.width, 30)];
     if (section == 0)
     [headerView setBackgroundColor:[UIColor redColor]];
     else 
     [headerView setBackgroundColor:[UIColor clearColor]];
     return headerView;
   }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top