Я обнаружил, что единица измерения системы координат Canvas отличается от единицы измерения экрана.
Например, в моем случае, как показано ниже:
Для одной конкретной точки ее экранная координата, полученная из ImageView.getX()
и ImageView.getY()
, равна (336, 578)
.
Затем методом проб и ошибок я рисую точку на холсте так, чтобы эта точка находилась ТОЧНО в том же положении, что и ImageView. Для этого я вызвал canvas.drawCircle(330, 440, radius, paint);
.
Вот вопрос:
Почему две координаты (336, 578) и (330, 440) отличаются друг от друга?
Это потому, что экран и холст используют разные единицы измерения?
Это проблема с пикселем, dp и всем этим?