Android onInterceptTouchEvent可禁用向下/移动/向上的操作

Android onInterceptTouchEvent可禁用向下/移动/向上的操作,android,touch-event,Android,Touch Event,我编写了一个程序,它可以完成这样的任务 01 2 3 4 56789 假设这些是我的布局中的视图。现在假设用户已经触到(向下事件)1,一些字符串被设置为“向下1”。但是,当用户滑动到2而没有松开手指的按键1时,它应该将字符串设置为“2向下”,但字符串仍然是“1向下”。。我不知道如何使这成为可能。这可能必须在1的动作动作事件中完成。但我不知道该怎么做,禁用它的进一步事件(Up事件)。在整个滑动之后,当我松开键时,字符串设置为“1向上”。因此,它无法识别2 3 4等的运动下降事件。它处于下降模式。我

我编写了一个程序,它可以完成这样的任务

01 2 3 4

56789

假设这些是我的布局中的视图。现在假设用户已经触到(向下事件)1,一些字符串被设置为“向下1”。但是,当用户滑动到2而没有松开手指的按键1时,它应该将字符串设置为“2向下”,但字符串仍然是“1向下”。。我不知道如何使这成为可能。这可能必须在1的动作动作事件中完成。但我不知道该怎么做,禁用它的进一步事件(Up事件)。在整个滑动之后,当我松开键时,字符串设置为“1向上”。因此,它无法识别2 3 4等的运动下降事件。它处于下降模式。我想这可以用 onInterceptTouchEvent,但我没有正确获取它。下面是我的源代码。分享你对它的看法。如果可能的话,给我一些关于如何将它整合到我的代码中的示例代码

@凌驾 创建时的公共void(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//选择_btn=(按钮)findviewbyd(R.id.ok);
//home_btn=(按钮)findviewbyd(R.id.home);
et=(EditText)findViewById(R.id.entry);
et.setText(“,TextView.BufferType.EDITABLE);
b=新的束();
试一试{
《睡眠》(2000年);
}捕捉(中断异常e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}
对于(int i=0;i
} .

将“int current=0;”移出onTouch方法。 每当屏幕上有移动并将0置于当前位置时,就会调用它

顺便说一下,我看到您使用了我的代码(部分代码):


你至少可以接受答案或将其标记为有用的

谢谢你的建议,但这没有用。应用程序不工作。为了实现这一点,我假设需要使用onInterceptTouchEvent,但我完全理解这种方法。如果你知道它,请帮助我,如何使用它在我的代码。
super.onCreate(savedInstanceState);

setContentView(R.layout.main);


// select_btn = (Button) findViewById(R.id.ok);
// home_btn = (Button) findViewById(R.id.home);
et = (EditText) findViewById(R.id.entry);
et.setText("", TextView.BufferType.EDITABLE);
b = new Bundle();


try {
    Thread.sleep(2000);
} catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

for (int i = 0; i < mybtn.length; i++) {
    String btnid = "btn" + i;
    int resid = getResources().getIdentifier(btnid, "id",
            getPackageName());
    mybtn[i] = (Button) findViewById(resid);
    mybtn[i].setOnTouchListener(this);

}