Я пытаюсь реализовать анимацию взаимодействия в android, где пользователь может изменить размер объекта и повернуть его с помощью взаимодействия.
Это не совсем то, что я пытаюсь реализовать, но нечто подобное.
Я хочу разрешить пользователю изменять угловую линию «p», и с этим должен измениться угол «a». Перемещение 'p' wrt center должно позволить изменять размер фигуры.
Я уже пробовал, Анимация и Аниматор Классы, но они не полностью служат целям.
Я не прошу какого-либо кода, мне просто нужен указатель на ho, я могу это реализовать.
Насколько я могу судить, вы хотите, чтобы строка, круг и «а» помечены дугой для изменения по отношению к «р», которая будет там, где пользователь прикасается.
Линия
Эта часть относительно проста, предполагая, что вы уже знаете, как получить координаты X и Y, которые пользователь нажимает. Во-первых, вам нужно переопределить метод onDraw , который предоставит вам элемент холста, на который вы можете нарисовать. Затем, когда пользователь коснется экрана, вы можете легко нарисовать линию от центра вашего экрана до соответствующих координат X и Y.
Круг
Эта часть также будет относительно простой, так как Canvas также имеет функцию drawCircle, чтобы легко нарисовать круг вокруг заданной координаты X и Y с заданным радиусом. Чтобы нарисовать круг, соответствующий событию касания пользователя, просто используйте функцию расстояния, чтобы вычислить расстояние от координатных координат X и Y пользователя до центра координаты экрана и использовать это как радиус для вашего круга.
Дуга
Рисование дуги динамически относительно сложно объяснить, и моя подруга навязывает мне пойти поужинать с ней, но этот вопрос очень четко отвечает на это, я думаю.
Также обратите внимание, что вам, вероятно, понадобится очистить холст от каждого события касания, чтобы все предыдущие рисунки не начали складываться друг над другом. Приветствия.