2017-03-23 3 views
0

nicht ändern Ich versuche, den Hintergrund der AccessoryView meiner UITableViewCell die gleiche Farbe wie der Rest meiner Zelle zu bekommen, aber ich kann es nicht erarbeiten. Unabhängig davon, was der AccessoryView-Hintergrund immer grau istSwift 3 - Kann Hintergrundfarbe auf meinem Cell.AccessoryView

Mein UITableView verwendet STATIC-Zellen, so dass keine Daten geladen werden.

Hier ist mein Code:

// Table setup 

    override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { 
     let cell = tableView.cellForRow(at: indexPath) 
     cell?.accessoryType = .checkmark 
     cell?.contentView.backgroundColor = #colorLiteral(red: 0.2250251152, green: 1, blue: 0.1816247099, alpha: 0.5082940925) 
     cell?.backgroundColor = #colorLiteral(red: 0.2250251152, green: 1, blue: 0.1816247099, alpha: 0.5082940925) 
     (superView as! ProjectTestSelectViewController).updateProjectHandlerTests(cell!, didSelect: true) 
    } 

    override func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) { 
     let cell = tableView.cellForRow(at: indexPath) 
     cell?.contentView.backgroundColor = UIColor(white: 1, alpha: 0.2) 
     cell?.backgroundColor = UIColor(white: 1, alpha: 0.2) 
     cell?.accessoryType = .none 
     (superView as! ProjectTestSelectViewController).updateProjectHandlerTests(cell!, didSelect: false) 
    } 

    override func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) { 
     cell.contentView.backgroundColor = UIColor(white: 1, alpha: 0.2) 
     cell.backgroundColor = UIColor(white: 1, alpha: 0.2) 
    } 

    override func tableView(_ tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int) { 
     view.tintColor = UIColor(white: 1, alpha: 0.8) 
    } 

Hier ist ein Screenshot

enter image description here

Ich habe versucht, den Code unten verwenden, aber es hat keinen Einfluss auf die Hintergrundfarbe.

Zelle? .accessoryView? .backgroundColor = UIColor.clear

+0

versuchen 'cell.accessoryView.tintColor = UIColor.clear' –

+0

@f_qi Ich habe versucht und es hat nicht funktioniert. Ich versuchte es auch in Kombination mit 'cell? .accessoryView? .backgroundColor = UIColor.clear' –

+0

Wohin haben Sie den Code eingegeben? Auch in 'cellForRowAt indexPath:' versuche 'cell.selectionStyle = .none' –

Antwort

2

Nach unserer Diskussion, es ist am besten für Sie Standard UITableView Methoden implementieren Ihr Ziel zu erreichen und setzen selectionStyle zu .none. Here ist ein Link zu einem Tutorial, um Ihnen bei der Implementierung der Methoden zu helfen.

Verwandte Themen