2016-12-01 3 views
0

Ich brauche die Zellen eines UITableView zu erweitern, aber ich sehe ein Flimmern dabei.Wie vermeidet man Flimmern beim erneuten Laden erweiterbarer Tabellensichtfelder?

Ich habe diese Umsetzung:

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { 

    // Switch row state 
    expandedFlags[indexPath.row] = !expandedFlags[indexPath.row] 

    UIView.animate(withDuration: 0.5, delay: 0, options: .curveEaseOut, animations: {() -> Void in 
      tableView.beginUpdates() 
      tableView.reloadRows(at: [IndexPath(row: indexPath.row, section: 0)], with: UITableViewRowAnimation.automatic) 
      tableView.endUpdates() 
     }, completion: nil) 
} 

Gibt es eine Möglichkeit, die Schnippen zu vermeiden, wenn die Zellen neu zu laden? Ich habe mehrere Beiträge gelesen, aber für mein Szenario nicht funktioniert.

Antwort

0
tableView.beginUpdates() 
.... 
tableView.endUpdates() 

hat bereits seine eigene Animation UIView Animation, was wahrscheinlich das Flackern

macht
Verwandte Themen