Ваша функция для получения х и у выглядит хорошо. Что бы я сделал, просто вставил x и y координаты в глобальную переменную x1 и y1 , а затем во второй раз нажмите / коснитесь, поместите их в x2 и y2 , а затем вы проведете линию, когда у вас есть значения для ваших глобальных переменных ...
Вы можете сделать это с помощью оператора if или чего-то в этом роде. Если вам нужно больше двух точек, вы можете поместить все свои x и y координаты в массив и просто обновить представление, чтобы нарисовать линию между каждой новой точкой, добавленной в массив. ..
EDIT
Вот только отрывок, но вам нужна более чистая версия этого:
double x1 = null;
double y1 = null;
double x2 = null;
double y2 = null;
final View touchView = findViewById(R.id.touchView);
touchView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
String.valueOf(event.getX() + String.valueOf(event.getY()));
if (x1 == null) {
x1 = event.getX();
y1 = event.getY();
} else {
x2 = event.getX();
y2 = event.getY();
}
// draw a line between x1,y1 and x2,y2 here...
return true;
}
});
Чтобы еще раз упомянуть об этом ... Это действительно плохой код, который я написал там, я просто написал его, чтобы показать, что я имел в виду в своем ответе. Как только вы точно знаете, что вы хотите, и сколько точек и линий можно нарисовать, вы можете изменять и использовать массивы или все, что вам может понадобиться в вашей реализации.
Надеюсь, это поможет и прояснит мой ответ?