2017-01-23 9 views
0

Я хочу, чтобы пользователи могли масштабировать и масштабировать два изображения вместе, сохраняя их в своих правильных относительных положениях друг к другу. Я делаю это, используя детектор жестов масштаба на одном из изображений, а затем увеличивая жест до другого изображения. Моя проблема заключается в том, что, хотя я могу заставить изображения перемещаться вместе, как только я пытаюсь масштабировать второе изображение, переводы резко сокращаются. Это что-то, что происходит при масштабировании, о котором я не знаю? Переменная info.parentPreCoords устанавливается в начале детектора жестов шкалы перед внесением каких-либо изменений в родительский (базовое изображение).Как перемещать и масштабировать изображения вместе

int[] childPreCoords = new int[2]; 
view.getLocationInWindow(childPreCoords); 

float[] differencePre = new float[]{-info.parentPreCoords[0] + view.getX(), 
       -info.parentPreCoords[1] + view.getY()}; 


int[] parentPostCoords = new int[2]; 
info.parent.getLocationInWindow(parentPostCoords); 


float[] differencePost = new float[]{info.parent.getX() + 
       (scale * (differencePre[0])), 
info.parent.getY() + (scale * differencePre[1])}; 


view.setScaleX(scale); 
view.setScaleY(scale); 


view.setX(differencePost[0]); 
view.setY(differencePost[1]); 

ответ

0

То, что я в конечном итоге делает добавлял относительный контейнер макета в оба изображения и затем установить сенсорную слушателя на контейнере. Это масштабировало и трансформировало оба изображения одновременно.