2014-11-06 15 views
7

Also ich habe das in iOS 7.1 getestet und es funktioniert gut. Ich setze die Hintergrundfarbe, um auf meinem Tableview zu löschen, die Linien unten verwendend.iOS 8.1 UITableview Hintergrundfarbe immer weiß

Ich setze auch die TableFooterView auf eine neue Ansicht, um alle über ungenutzten Zellen zu verstecken.

Dies funktioniert wunderbar auf iOS 7, aber in iOS 8 bin ich mit einer weißen Hintergrundfarbe für den Raum unter der Tabellenansicht verlassen. Die Superansicht, in der die Tabelle angezeigt wird, hat auch eine Hintergrundfarbe von clear. Irgendwelche Ideen?

Added Bilder unten - ich habe den Client-Namen

Arbeiten auf iOS 7 Working on iOS 7

Problem auf iOS 8,1 enter image description here

+0

Welche Farbe soll es haben? – Fogmeister

+0

Transparent/klar –

+0

Aber was bedeutet das? Du wirst die inneren Funktionen des iPhone nicht sehen, egal wie transparent du es einstellst. Wo ist das Weiß ... was sollte stattdessen sein? – Fogmeister

Antwort

3

Apple-Dokument sagt

zu verschleiern hatte. .. In iOS 7 haben Zellen standardmäßig einen weißen Hintergrund; In früheren Versionen von iOS erben Zellen die Hintergrundfarbe der einschließenden Tabellenansicht. Wenn Sie die Hintergrundfarbe einer Zelle ändern möchten, tun Sie dies in der tableView: willDisplayCell: forRowAtIndexPath: Methode Ihres TableView-Delegaten.

Möglicherweise müssen Sie die delidet Methode willDisplayCell UITableView verwenden, um einen transparenten Hintergrund für Ihre Tabellenansicht zu haben.

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cellforRowAtIndexPath:(NSIndexPath *)indexPath 

{ 
     [cell setBackgroundColor:[UIColor clearColor]]; 
} 
+0

Heilige Mutter Gottes! iOS 8 wird mich verrückt machen. Diese Lösung MUSS verwendet werden, auch wenn die Tabellenzellenfarbe über das Storyboard definiert wurde. Ich habe überall "schwarz" (Tabelle, Zelle, Inhaltsansicht, BG, FG, Farbton ...) und ich habe immer noch weißen Hintergrund (vor allem auf Offenlegungsindikatoren). Ich füge diese Zeilen zu meinem UITableViewController und es funktionierte. Ernsthaft ... Apple stirbt nach dem Tod von Jobs. –

0

Für mich ist das, was funktioniert hat (ich eine benutzerdefinierte bin mit UITableViewCell in seinem eigenen XIB):

  • Stellen Sie die Inhaltsansicht Hintergrund der Zelle Farbe in IB zu löschen.
  • Stellen Sie den Hintergrund der Zelle auf klare Farbe in IB.
  • Setzen Sie die Hintergrundfarbe der Tabellenansicht auf UIColor.clearColor()programmatisch in viewDidLoad. Im Storyboard funktioniert das nicht.
Verwandte Themen