Ответ 1
После обширных исследований и тестирования я наконец понял, как работает scrollTo().
(0,0)
- это координаты в верхнем левом углу контейнера View. При прокрутке к любой точке (x,y)
верхний левый угол View будет помещен в координаты (x,y)
.
Если View показывает изображение, Bitmap, больше, чем View, прокрутка до (0,0)
приведет к View в центре изображения. Таким образом, верхний левый угол изображения будет расположен в (-dX/2, -dY/2)
и в правом нижнем углу в (mW - dX/2, mH - dY/2)
. dX
представляет собой разницу между ширинами изображения и View. А dY
представляет разницу между высотами изображения и View.
Чтобы увидеть нижний правый угол и не пройти его (ниже или дальше вправо), это правильный вызов: scrollTo(mW - ivW - dX/2, mH - ivH - dY/2);
Прилагаемое изображение показывает графическое представление View и позиционирование изображения растрового изображения.