Występuje awaria podczas usuwania wiersza.Awaria z brakującą komórką dla nowo widocznego wiersza podczas aktualizowania UITableView
// Updating my data model
....
// apply the updates
self.tableView.beginUpdates()
self.tableView.deleteRows(at: indexPathsToDelete, with: .automatic)
self.tableView.endUpdates()
Kroki prowadzące do odtworzenia - dodaj wiersze - Usuwanie wierszy, w szczególności upewniając się tam kilka wierszy poza bieżącym ekranie (który będzie wówczas na ekranie, gdy delecja jest udany - Powtarzaj, aż awaria
to nie zawsze się tak mój najlepszy przypuszczenie to, że stanie się to tylko wtedy, gdy komórki nie próbuje załadować się recyklingowi
to jest w 10,0 symulatora z Xcode 8.0
Kod*** Assertion failure in -[UITableView _updateWithItems:updateSupport:],
/BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3599.6/UITableView.m:3149
Missing cell for newly visible row 2
(null)
dla cellForRowAt
if isMultipe{
let cell = tableView.dequeueReusableCell(withIdentifier: DetailsTableViewCell.defaultIdentifier, for: indexPath) as! DetailsTableViewCell
return cell
} else {
let cell = tableView.dequeueReusableCell(withIdentifier: DetailsMultipleTableViewCell.defaultIdentifier, for: indexPath) as! DetailsMultipleTableViewCell
return cell
}
tego samego błędu zgłaszane tutaj: https://forums.developer.apple.com/thread/49676
W jaki sposób kasujesz swoją komórkę? Czy możesz pokazać swój kod w 'cellForRow ...'? –
@Hoa pytanie zaktualizowano – iOSGeek
Zarejestrowałeś plik .xib w klasie komórki i w razie potrzeby usunięto go. Być może jest problem z iOS10, ale spróbuj sprawdzić, czy twoja komórka nie jest 'nilowa ', czy nie po linii' dequeueReusableCell'. –