草庐IT

MotionEvent

全部标签

android - 如何在用户触摸屏幕时停止 OnTouchListener? <机器人>

嘿,我正在寻找一种方法来强制用户取消触摸并强制他再次举起手指重新选择。这基本上是我的问题: 最佳答案 选项1:设置OnClickListener而不是OnTouchListener。选项2:捕获ACTION_UP并仅在它之后应用您的操作。booleanpressFlag=false;publicbooleanonTouch(Viewv,MotionEventevent){intaction=event.getAction();switch(action){caseMotionEvent.ACTION_DOWN:if(pressFla

android - android canvas 上的 Fling 实现

我有检测fling的常用手势检测器,它是一个SurfaceView的实例属性GestureDetectorflingDetector=newGestureDetector(getContext(),newSimpleOnGestureListener(){@OverridepublicbooleanonFling(MotionEvente1,MotionEvente2,floatvelocityX,floatvelocityY){//Flingimplementationreturntrue;}});我在canvas上画了很多复杂的东西,我有一个translate(dx,dy)方法,我

android - 在 Android 上检测重要的设备运动

我一直在尝试弄清楚如何制作一个应用程序来检测设备是否已经移动了很多,而不仅仅是摇晃。我正在尝试检测至少一英尺的距离。阅读官方Android开发网站上的培训部分,我最好的猜测是我应该使用SignificantMotionSensor,但我找不到如何使用它的示例。我是否只是将我的“当前”位置存储在一个数组中,然后在调用onTrigger()时将其与Event的值数组进行比较?或者我应该改用加速度计吗?其他传感器?LocationManager(这个足够准确吗?)? 最佳答案 基于显着运动传感器demoactivityinApiDemos

Android:垂直RatingBar?

如何旋转RatingBar?是否有垂直自定义RatingBar的示例? 最佳答案 这是垂直评级栏的示例代码...publicclassVerticalRatingBarextendsRatingBar{privateintx,y,z,w;@OverrideprotectedvoiddrawableStateChanged(){//TODOAuto-generatedmethodstubsuper.drawableStateChanged();}publicVerticalRatingBar(Contextcontext){super

android - 指针索引的含义是什么,可以通过哪些方式更改它?

我知道可以用这种方式检索指针索引intpointerIndex=(event.getAction()&MotionEvent.ACTION_POINTER_INDEX_MASK)>>MotionEvent.ACTION_POINTER_INDEX_SHIFT;它在某些方法中用作参数,例如event.getPointerId(intpointerIndex)或event.getX(intpointerIndex)但是我不明白它是什么意思,以及它如何从一个事件到下一个事件改变它的值 最佳答案 指针索引仅指示数据在MotionEvent中

java - 如何在 Android 中获取 ImageView 的所有 x 和 y 坐标?

我正在实现一个应用程序,用于在移动屏幕上的图像位置时获取ImageView的正确x和y位置以及ImageView的x和y坐标。当我运行应用程序并移动我的ImageView时,它只会得到0和1。有没有办法找出x和y位置?这是我的主要Activity类:publicclassMainActivityextendsActivity{staticfinalintNONE=0;staticfinalintDRAG=1;staticfinalintZOOM=2;intmode=NONE;Matrixmatrix=newMatrix();MatrixsavedMatrix=newMatrix();P

android - 如何使用 Android UiAutomation.injectInputEvent 注入(inject)点击事件

我在安装设备管理员的应用程序中自动测试流程。要在大多数设备上激活设备管理员(假设我没有像三星提供的那样让我这样做的企业API),系统会向用户显示一个弹出窗口,然后必须单击“激活”按钮。我正在使用Robotium和AndroidJUnit来驱动我的测试。在正常的测试用例中,人们只能与被测应用程序和进程交互,而不能与出现的任何系统Activity交互。UiAutomation声称允许您通过利用AccessibilityFramework与其他应用程序进行交互,然后允许一个到injectarbitraryinputevents.所以-这是我正在尝试做的事情:publicclassAbcTes

Android,帮助旋转触摸图像

我正在尝试在此图像上旋转其中一个透明PNG。数字部分是我要旋转的部分。我能够做到这一点,但这不是我想要实现的目标我想像在真正的组合锁上那样旋转数字。因此,用户将触摸并在圆圈内移动他们的手指。我查看了触摸/移动事件中不太精确的图像旋转,但它们还不够。这是我目前的代码publicbooleanonTouch(Viewv,MotionEventevent){doubler=Math.atan2(event.getX()-lockNumbers.getWidth(),lockNumbers.getHeight()-event.getY());introtation=(int)Math.toDe

Android onClick 阻塞 onFling

我有一个Activity,它实现了一个手势检测器来捕捉用户的快速输入以导航到其他屏幕。这工作正常-但是-我最近更新了一个派生自BaseActivity的类以添加一个onClick函数,现在该点击事件似乎阻止了onFling被击中。onClick绑定(bind)到屏幕上的TextView区域(在LinearLayout中)。resultsClick方法使用其在XML布局中的onClick属性连接到TextView。我曾尝试更改onSingleTapUp和onDown中的返回值,但没有成功。我也尝试过向下面的所有函数添加日志语句。当我在TextView区域中滑动时,它们都不会触发,但它们会

java - 在Android中检测 'drag'的开始和结束位置,并在它们之间画一条线

我想为android制作一个简单的涂鸦应用程序,但我不知道如何从android获取一些数据!我需要:鼠标拖动前后的位置或者如果是简单的触摸如何获取触摸的位置。我应该怎么画线条?有人可以帮帮我吗? 最佳答案 您可以在View中覆盖onTouchEvent方法:@OverridepublicbooleanonTouchEvent(MotionEventevent){if(event.getAction()==MotionEvent.ACTION_DOWN){start_x=event.getX();start_y=event.getY(