Java 带有OnTouch事件的ScrollView

Java 带有OnTouch事件的ScrollView,java,android,Java,Android,我有一个滚动视图和文本视图上的一个很长的文本,我想根据用户的操作拖动到下一个/上一个文本,如下所示: public class MyOnTouch implements OnTouchListener { @Override public boolean onTouch(View v, MotionEvent event) { return pageFlip(v, event); } public boolean pageFlip(V

我有一个
滚动视图
文本视图
上的一个很长的文本,我想根据用户的操作拖动到下一个/上一个文本,如下所示:

public class MyOnTouch implements OnTouchListener {
   @Override
   public boolean onTouch(View v, MotionEvent event) {
       return pageFlip(v, event);           
   }

   public boolean pageFlip(View v, MotionEvent event) {
       switch (event.getAction()) {
       case MotionEvent.ACTION_DOWN:
           startX = event.getX();
           break;
           case MotionEvent.ACTION_UP:
           float currentX = event.getX();       
            if (startX > currentX + 150 ) {
                nextText(v);
            }
            if (startX  < currentX - 150) {                
                previousText(v);
            }
       default:
           break;
   }
   return true;
   }
}
在我的xml上:

<ScrollView
        android:id="@+id/scrollViewTest"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content">            
    <TextView
            android:id="@+id/textViewTest"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="very long text" />    
</ScrollView>   
OnTouchListener
定义如下:

public class MyOnTouch implements OnTouchListener {
   @Override
   public boolean onTouch(View v, MotionEvent event) {
       return pageFlip(v, event);           
   }

   public boolean pageFlip(View v, MotionEvent event) {
       switch (event.getAction()) {
       case MotionEvent.ACTION_DOWN:
           startX = event.getX();
           break;
           case MotionEvent.ACTION_UP:
           float currentX = event.getX();       
            if (startX > currentX + 150 ) {
                nextText(v);
            }
            if (startX  < currentX - 150) {                
                previousText(v);
            }
       default:
           break;
   }
   return true;
   }
}
公共类MyOnTouch实现OnTouchListener{
@凌驾
公共布尔onTouch(视图v,运动事件){
返回页面翻转(v,事件);
}
公共布尔页面翻转(视图v,运动事件){
开关(event.getAction()){
case MotionEvent.ACTION\u DOWN:
startX=event.getX();
打破
case MotionEvent.ACTION\u UP:
float currentX=event.getX();
如果(startX>currentX+150){
nextText(v);
}
如果(startX
问题是当我像这样实现它时,我可以进入下一个/上一个文本,但我不能上下滚动以查看底部的文本


有什么建议吗?

在方法
pageFlip
change
中返回true
to
返回false

@choop,现在您可以继续开发了,太棒了!:)