2012-09-21 7 views
6

Nie jest dobrym pomysłem skonstruowanie obiektu ścieżki za każdym razem, gdy metoda Draw draw. Czy lepiej jest utrzymywać obiekt ścieżki i usuwać/usuwać punkty za każdym razem?Ścieżka rysowania systemu Android

Aktualizacja: Jeszcze jedno pytanie - czym różni się obiekt ścieżki "zresetuj" i "cofnij"?

Odpowiedz

9

Tak, lepiej jest zresetować ścieżkę i ustawić punkty zamiast inicjowania nowej. Zapobiega to nadmiernej alokacji pamięci, co może prowadzić do częstego usuwania śmieci. Po uruchomieniu GC grafika może zostać zatrzymana na chwilę, szczególnie na starszych urządzeniach, więc chcesz ograniczyć to do minimum.

W reset() i rewind() metody oba mają prawie taki sam efekt, z wyjątkiem tego rewind()keeps the internal data structure intact, która może poprawić wydajność szczególnie jeśli ścieżka zawsze ma taką samą liczbę punktów.

+3

"jeśli twoja ścieżka ma zawsze taką samą liczbę punktów" - to jest kluczowa część! – Kostadin