Dawno późno wiem, ale to było coś, co było jeszcze zbyt zagubiony. Cały ten obszar API wydaje się bardziej skupiony na robieniu rzeczy, niż pozwalaniu nam na to, co się dzieje, bez wątpienia, ponieważ robi naprawdę sprytne rzeczy za kulisami.
Ustawianie punktów i ich przywracanie są zupełnie oddzielne.
Istnieje kilka sposobów na ustawienie konkretnego punktu, doskonała odpowiedź Entreco pokazuje w jedną stronę.
Aby odzyskać punkt, należy uzyskać wartości macierzy powiązane z tym punktem, a następnie wybrać odpowiednie części z niego. Ta, również doskonała, odpowiedź (Android Matrix, what does getValues() return?) wyjaśnia bardzo wyraźnie, co dzieje się z matrycą, i widać z niej, że żądane wartości x, y to elementy indeksowane przez 2 i 5.
Poniżej znajduje się (pseudo-) kod używam, aby się do nich dostać.
float [] theArray = { <nine float zeroes> }
Matrix m = new Matrix();
boolean success = myPathMeasure.getMatrix(m, theArray, Matrix.MTRANS_X+Matrix.MTRANS_Y);
m.getValues(theArray);
x = theArray[2];
y = theArray[5];
Nie jestem strasznie szczęśliwy z tego powodu, ale nie wydaje się, że jest to bardziej formalny sposób.
rl.addView (myDrawing); mam błąd w tej linii –