Mam widok tabeli, w którym komórki są budowane inaczej, w zależności od tego, czy tabela jest edytowana, czy nie. Konkretnie, styl selekcji ma wartość zero w trybie edycji i niebieski, gdy nie jest w trybie edycji.Przerysowywanie UITableViewCell podczas wchodzenia/wychodzenia z trybu edycji
Po przejściu z jednego do drugiego zauważyłem, że niektóre komórki nie są aktualizowane. Szybkie rejestrowanie mówi mi, że nawet jeśli wygląd komórek zmienia się dość drastycznie (widoki akcesoriów są dodawane/usuwane poprawnie na przykład) widok tabeli nie odświeża stylu selekcji (ani nie ma znaczenia tekst).
Co się tutaj dzieje? Czy tylko niektóre atrybuty komórki zostały zaktualizowane po wywołaniu setEditing? Przypuszczalnie tylko te, które mają określoną metodę pozwalającą na przypisanie oddzielnego stylu widoku (na przykład EditingAccessoryType)? Sądzę, że skorzystałbym z EditingSelectionStyle.
Jak mam to rozwiązać? Dostosowując setEditing, aby zmienić selectionStyle dla każdej komórki? Nie jestem nawet pewien, jak wykonać iterację w widoku tabeli, aby to zrobić. reloadData nie jest opcją z powodu niektórych animacji, których używam.
Dlaczego miałbyś to zrobić zamiast przesłonić setEditing: animated: w komórce? – jrturton
Dzięki @jrturton, Twoja odpowiedź jest bardziej elegancka. – xialin
@jrturton, czy możesz dodać swój komentarz jako odpowiedź? – phatmann