you can implement the sensor "OnTouchListener" on ScrollView.
then the technique is not to scroll until the person has not scrooler at least the height of an item.
example of the code:
scroll.setOnTouchListener(new OnTouchListener()
{
private int mLastY;
public boolean onTouch(View v, MotionEvent event)
{
switch (event.getAction())
{
case MotionEvent.ACTION_DOWN: //the user places his finger on the screen
mLastY=(int)event.getY(); //to get the "y" position starting
break;
case MotionEvent.ACTION_MOVE:
if(mLastY-event.getY() >= theSizeOfItem) //if a movement of the size of an item occurs
{
scroll.scrollTo(0, scroll.getScrollY()+ theSizeOfItem));
scroll.invalidate();
mLastY=(int)event.getY(); //reset the starting position to the current position
}
if(event.getY()-mLastY >= theSizeOfItem) //if a movement of the size of an item occurs
{
scroll.scrollTo(0, scroll.getScrollY() - theSizeOfItem));
scroll.invalidate();
mLastY=(int)event.getY(); //reset the starting position to the current position
}
break;
default:
break;
}
return v.onTouchEvent (event); //to use other sensors (OnClick, OnLongClick, ...)
}});
must then implement the case where the scroll reaches the end ! Sorry for my English, I hope it will help you