Я в настоящее время использую эту библиотеку gitup touchimageview https://github.com/MikeOrtiz/TouchImageView .... После масштабирования, на основе процента масштабирования Я хочу сопоставить координаты longpress с исходными координатами изображения. Любая помощь будет оцененаХотите нанести на карту увеличенные координаты изображения с фактическими координатами изображения в android imageview
0
A
ответ
0
Try, чтобы получить матрицу ImageView
:
float[] values = new float[9];
getImageMatrix().getValues(values);
С помощью этого массива, вы имеете позицию верхнего левого угла в плане изображения на индексы 2 и 5. Например, когда values[2], values[5]
-10, -10 означает, что левый верхний угол экрана составляет 10,10 пикселя изображения. Таким образом, вы можете получить координаты длительного нажатия:
float imageX = (pressX - values[2])/scale;
float imageY = (pressY - values[5])/scale;
Недавно я работаю с увеличенными изображениями, а также использовать эту библиотеку: https://github.com/chrisbanes/PhotoView Я думаю, его немного лучше, он имеет некоторые predifined штрихов с координатами изображения, и до сих пор (last commit ~ 2 месяца назад)
1) 'getImageMatrix()' 2) инвертировать возвращен 'Matrix' 3) вызывать' mapPoints' на инвертированном 'Matrix', для обратного перехода пропустите шаг 2) – pskink
Можете ли вы поделитесь мной подробным руководством этого решения? –