Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 行动不';行动后不要打电话_Android_Android Animation_Touch Event_Ontouchlistener - Fatal编程技术网

Android 行动不';行动后不要打电话

Android 行动不';行动后不要打电话,android,android-animation,touch-event,ontouchlistener,Android,Android Animation,Touch Event,Ontouchlistener,我有一个动画,使一个按钮按下触摸。我希望它能够保持按下,而用户滚动屏幕。为了做到这一点,我制作了一个动画,基本上只是让图像保持在相同的状态,以便在动作中调用。我的问题是,当我释放按钮时,没有调用动作,这会触发动画,使按钮恢复到其完整大小,并且看起来不再被按下。我有一个滚动视图内的整个相对布局。我仍然不完全理解发生了什么,但ScrollView似乎正在“接管”onTouch事件。这是我的onTouchListener代码 s104.setOnTouchListener(new OnTouchLis

我有一个动画,使一个按钮按下触摸。我希望它能够保持按下,而用户滚动屏幕。为了做到这一点,我制作了一个动画,基本上只是让图像保持在相同的状态,以便在动作中调用。我的问题是,当我释放按钮时,没有调用动作,这会触发动画,使按钮恢复到其完整大小,并且看起来不再被按下。我有一个滚动视图内的整个相对布局。我仍然不完全理解发生了什么,但ScrollView似乎正在“接管”onTouch事件。这是我的onTouchListener代码

s104.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            switch (event.getAction()) {
            case MotionEvent.ACTION_DOWN:
                clearAnim();
                s104.setAnimation(animPressed);
                s104.startAnimation(animPressed);
                return true;
            case MotionEvent.ACTION_MOVE:
                s104.setAnimation(animDrag);
                s104.startAnimation(animDrag);
                return true;
            case MotionEvent.ACTION_UP:

                s104.setAnimation(animReleased);
                s104.startAnimation(animReleased);

                return true;
            }
            return false;
        }
    });
我不明白为什么没有人叫你行动。任何帮助都将不胜感激

我仍然不完全理解发生了什么,但ScrollView似乎正在“接管”onTouch事件

这是正确的。您正在体验的是
滚动视图
“接管”了
运动事件
。您可以在
OnTouchListener
中捕获此事件-为
运动事件添加案例。操作\u取消
。在那里,如果用户按下了视图(ACTION_DOWN)并随后向下滚动,您可以确定结果