Chcę usunąć domyślny niebieski kolor zaznaczenia komórek uitableview. Nie chcę tam żadnego koloru wyboru. Nie utworzyłem niestandardowej klasy komórek. Dostosowuję komórkę, dodając nad nią etykiety i przyciski. Próbowałem zrobić:
cell.selectioncolor = [UIColor clearcolor];
ale mówi, że ta metoda jest przestarzała.
ios
objective-c
uitableview
neha
źródło
źródło
Wybierz to w
Storyboard
lubXIB
źródło
źródło
Swift 3.0
źródło
Cel C:
lub
Swift 4:
Swift 3:
Swift 2:
Jeśli chcesz to zmienić, używając tylko Storyboard / Xib, po prostu wybierz komórkę, z której chcesz usunąć „Efekt stylu wyboru” i zdefiniuj ją jako „Brak”. To też zadziała jak magia: D
Storyboard / Xib
źródło
Ustawienie stylu wyboru
.none
widoku tabeli na wpłynęło na czas reakcji i wydajność widoku tabeli w mojej aplikacji (didSelectRowAt indexPath
stuknięcia były opóźnione). Moim rozwiązaniem tego problemu było ukrycie wybranego widoku tłaawakeFromNib()
podczas pierwszego tworzenia komórki:selectedBackgroundView?.isHidden = true
źródło
Spróbuj tego szybko
źródło
Zrób to w celi :
To jest takie proste.
źródło
szybki 5
źródło
prawidłowa odpowiedź powinna brzmieć:
cell.selectedBackgroundView?.backgroundColor = <choose your color>
Typ wyboru to inna właściwość, która gdy jest ustawiona na
.none
daje to, czego chcesz ORAZ inne niepożądane efekty uboczne.Jeśli nie chcesz komórka być podświetlone , a następnie dokonać kolor swojego tle widok na samo jak wtedy, gdy jest nie podświetlona.
źródło