Я не нашел реального способа сделать это. Вот метод, который я использовал:
После создания ImageView перейдите к известному местоположению.
int ivX = 0;
int ivY = 0;
_iv.invalidate();
_iv.scrollTo(ivX, ivY);
Таким образом, у меня есть точные (x, y) координаты того, где я нахожусь. Затем я реализовал метод onScroll () и использовал сгенерированные расстояния для пересчета моих (x, y) координат:
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
//Add the scroll distance to the old X, Y coordinates
ivX += distanceX;
ivY += distanceY;
//Scroll to the new location
_iv.scrollTo(ivX, ivY);
return false;
} //End onScroll()
Кроме того, чтобы лучше понять, как работает scrollTo()
и как соотносятся координаты изображения и контейнера, перейдите по этой ссылке на другой мой пост.