Mam niektóre metody w moim widoku, które modyfikują niektóre kształty, które są rysowane po wywołaniu. W Javie, aby upewnić się, że komponent jest aktualizowany, zadzwoniłbym pod numer repaint()
. Czy jest coś, co upewni mnie, że mój widok jest poprawnie zaktualizowany?Jak zaktualizować widoki systemu Android po modyfikacjach?
Czytałem gdzieś, że nazywając invalidate()
w metodzie onDraw()
by utrzymać wszystko na bieżąco i dlatego nie będzie musiał mieć coś podobnego repaint()
w moich metod, które modyfikują że kształty, które są rysowane.
Czy to prawda, czy jest jeszcze coś, co muszę zrobić?
EDIT
Aby dodać przykład metodę nazywam moim zdaniem jest:
public void setLineThickness(int thickness) {
aLineThickness = thickness;
if(aLineThicness > 1)
//repaint(); - Okay in Java but not in Android
}
jeśli podążę za Tobą poprawnie, powinienem wywołać 'invalidate()' w mojej metodzie 'setLineThickness'? – StartingGroovy
Jeśli chcesz, aby użytkownik Twojego widoku nie przejmował się tym, że musisz go wywoływać, to tak. Wstawiłbym to tam (uczyń to ostatnia linia w metodzie) –
Dziękuję, dam ci spróbować i zobaczę, jak to działa – StartingGroovy