2015-04-08 8 views
5

In meinem UITableView, habe ich den Separator Farbe wie folgt aus:Farbe der Fußzeile Ansicht immer dunkler als UITableView Separators Farbe

- (void)viewDidLoad { 
    ... 
    self.tableView.separatorColor = [UIColor lightGrayColor]; 
    ... 
} 

Und habe ich die Farbe der Fußzeile wie folgt aus:

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { 

    UITableViewHeaderFooterView *footerView = [[UITableViewHeaderFooterView alloc] 
              initWithFrame:(CGRect){0, 0, 320, 1}]; 
    footerView.contentView.backgroundColor = [UIColor lightGrayColor]; 

    return footerView; 
} 

jedoch ist die Farbe der Fußzeile Ansicht immer dunkler als die Farbe des Separators, wie folgt aus:

enter image description here

Wie bekomme ich die exakt gleiche Farbe? Vielen Dank.

+0

Es ist nicht footerView Seperator dunkler als Tabelle seperator. Der Trenner der Tabelle ist leichter als der von footerView. TBH, dein Footer Seperator ist 'lightGrayColor', aber der Zellenseparator liegt irgendwo zwischen" ccc "oder" ddd "... –

+0

@PhamHoan Aber ich setze die Farbe des Separators explizit in viewDidLoad auf hellgrau. – Impossibility

Antwort

19

Ab iOS 6.0 ab, können Sie die unten genannten UITableView's Delegatmethode verwenden, um die Farbe der Fußzeile Ansicht des Hintergrund-

- (void)tableView:(UITableView *)tableView willDisplayFooterView:(UIView *)view forSection:(NSInteger)section 
{ 
    //Set the background color of the View 
    view.tintColor = [UIColor blueColor]; 
} 
+0

Danke, aber die Fußzeile ist leider immer noch dunkler. – Impossibility

+0

Das funktioniert tatsächlich, das Problem war, dass wegen der Retina-Anzeige (anscheinend) die Fußzeile dicker als 1 px war, so dass es dunkel erschien. Vielen Dank! – Impossibility

0

Keines der oben arbeitete für mich zu ändern. Das einzige, was arbeitete, war die Lösung aus diesem Thread:

White Separator Above Table Section Headers

Grundsätzlich müssen Sie manuell in der Fußzeile Separators 1 px oberhalb Ihrer benutzerdefinierten Fußzeile Ansicht hinzuzufügen.

-(UIView*)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section 
{ 
    UITableViewHeaderFooterView *versionView = [[UITableViewHeaderFooterView alloc] initWithFrame:CGRectMake(0, 0, maxScreenWidth, 50)]; 
    UIView *footerSeparator = [[UIView alloc] initWithFrame:CGRectMake(0, -1, maxScreenWidth, 1)]; 

    versionView.backgroundColor = [UIColor blackColor]; 
    footerSeparator.backgroundColor = [UIColor darkGrayColor];//Your color 

    [versionView addSubview:footerSeparator]; 
    return versionView; 
} 

Das einzige Problem, das ich mit dieser ist, dass der Fußzeile Separator, wenn Sie von ihm weg bewegen zu verschwinden scheint und dann in der Tabellenansicht auf ihn zurück.

Verwandte Themen