gpt4 book ai didi

android - 如何在android中为水平和垂直定义单独的触摸事件?

转载 作者:行者123 更新时间:2023-11-30 04:09:29 25 4
gpt4 key购买 nike

我有一个安卓应用程序。我有四个屏幕,每个屏幕都包含一个 ListView 。我的要求是,当用户水平翻转时,它应该更改 ui 屏幕,当用户垂直翻转时,它应该滚动列表。我的代码是

public boolean dispatchTouchEvent(MotionEvent event)
{
System.out.println("22");
int eventaction=event.getAction();

switch(eventaction)
{
case (MotionEvent.ACTION_MOVE):
System.out.println("move");
a=1;
break;

case MotionEvent.ACTION_UP:
System.out.println("up");
if(a==1)
{
view1.setAnimation(AnimationUtils.loadAnimation(this, R.anim.slide_left));
view1.showNext();
}
a=0;
break;

default:
break;
}

return super.dispatchTouchEvent(event);
}

最佳答案

我有一个类似的问题, children 正在吃掉所有的滚动事件。我最终覆盖了父级中的 onInterceptTouchEvent 以检测它是水平滑动还是垂直滑动并相应地采取行动。你会想要这样的东西

@Override
public boolean onInterceptTouchEvent (MotionEvent ev){
if(horizontalSwipe(ev)){
return true;
}
else
return false;

}

如果新的运动事件构成水平运动事件,你有一些功能可以根据你的历史来确定。

关于android - 如何在android中为水平和垂直定义单独的触摸事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11071380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com