android– 没有在onTouch中获得正确的x y值

android– 没有在onTouch中获得正确的x y值,第1张

概述我想在屏幕上拖动时移动图像,但ACTION_MOVE中的x和y值不正确.我在ACTION_MOVE中打印了x和y值.在每个替代中,它打印正确的x和y值.publicbooleanonTouch(Viewv,MotionEventevent){ImageViewview=(ImageView)v;floatx=0;floaty=0;switch(event.getAction(

我想在屏幕上拖动时移动图像,但ACTION_MOVE中的x和y值不正确.我在ACTION_MOVE中打印了x和y值.在每个替代中,它打印正确的x和y值.

public boolean ontouch(VIEw v, MotionEvent event) {  ImageVIEw vIEw = (ImageVIEw) v;  float x=0;  float y=0;  switch (event.getAction()) {  case MotionEvent.ACTION_DOWN:     break; case MotionEvent.ACTION_UP:     break;  case MotionEvent.ACTION_MOVE:      x=event.getX();      y=event.getY();      System.out.println("x= "+x+" y="+y);      int wIDth = 100, height = 100;      lp = new absoluteLayout.LayoutParams(wIDth, height, (int) (x), (int) (y));    break;  }  mLayout.updateVIEwLayout(vIEw, lp);  return true; }

这是我的代码.印刷输出是:

01-17 10:31:11.721: I/System.out(3983): x= 71.0 y=91.001-17 10:31:11.746: I/System.out(3983): x= 102.0 y=24.001-17 10:31:11.776: I/System.out(3983): x= 72.0 y=91.001-17 10:31:11.806: I/System.out(3983): x= 103.0 y=24.001-17 10:31:11.826: I/System.out(3983): x= 73.0 y=91.001-17 10:31:11.851: I/System.out(3983): x= 104.0 y=24.001-17 10:31:11.871: I/System.out(3983): x= 74.0 y=91.001-17 10:31:11.896: I/System.out(3983): x= 105.0 y=24.001-17 10:31:11.921: I/System.out(3983): x= 75.0 y=91.001-17 10:31:11.941: I/System.out(3983): x= 107.0 y=24.001-17 10:31:11.957: I/System.out(3983): x= 76.0 y=90.001-17 10:31:11.976: I/System.out(3983): x= 109.0 y=24.001-17 10:31:11.996: I/System.out(3983): x= 77.0 y=90.001-17 10:31:12.026: I/System.out(3983): x= 110.0 y=24.001-17 10:31:12.056: I/System.out(3983): x= 78.0 y=90.001-17 10:31:12.101: I/System.out(3983): x= 111.0 y=24.001-17 10:31:12.131: I/System.out(3983): x= 79.0 y=89.001-17 10:31:12.186: I/System.out(3983): x= 112.0 y=24.001-17 10:31:12.231: I/System.out(3983): x= 80.0 y=89.001-17 10:31:12.276: I/System.out(3983): x= 113.0 y=24.001-17 10:31:12.296: I/System.out(3983): x= 80.0 y=88.001-17 10:31:12.316: I/System.out(3983): x= 114.0 y=24.001-17 10:31:12.336: I/System.out(3983): x= 81.0 y=88.0

替代点是正确的.但它是如何发生的?我怎么解决这个问题?

解决方法:

如果你检查这个question的答案,他说视图可能有一个内置的触摸事件,可能会干扰你的触摸事件.检查您的视图是否有.

总结

以上是内存溢出为你收集整理的android – 没有在onTouch中获得正确的x y值全部内容,希望文章能够帮你解决android – 没有在onTouch中获得正确的x y值所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1116880.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存