Нет слушателя прокрутки для HorizontalScrollView. Что вы можете сделать, это добавить к нему OnTouchListener. Он будет срабатывать непрерывно, когда пользователь выполняет прокрутку, и каждый раз, когда вы можете использовать метод getScrollX, который возвращает int.
Теперь 0 означает самый левый край, чтобы найти самый правый (максимальный объем прокрутки), вам нужно найти ширину дочернего представления вида горизонтальной прокрутки. Это можно найти с помощью addOnGlobalLayoutListener, иначе ширина всегда будет 0 внутри метода onCreate
Поместите этот код в метод onCreate
final HorizontalScrollView hs = (HorizontalScrollView)findViewById(R.id.scroll);
ViewTreeObserver vto = hs.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
hs.getViewTreeObserver().removeGlobalOnLayoutListener(this);
maxScrollX = hs.getChildAt(0)
.getMeasuredWidth()-getWindowManager().getDefaultDisplay().getWidth();
}
});
hs.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
Log.e("ScrollValue", Integer.toString(hs.getScrollX()));
if(hs.getScrollX() == maxScrollX){
Log.e("MaxRight", "MaxRight");
}
return false;
}
});