【问题标题】:Trying to move a circle with Touch尝试使用 Touch 移动圆圈
【发布时间】:2011-03-12 20:35:36
【问题描述】:

我正在尝试在自定义组件内移动一个圆圈,并且仅当我单击自定义组件外部的按钮时它才会移动。 我触摸并拖动圆圈,它什么也不做,但是只要我单击按钮(与自定义组件无关),它就会更新(绘制)到我停止触摸的位置...... 我应该在自定义组件上调用一些绘图更新吗? 我已经覆盖了 onTouchEvent 和 onDraw。 onTouch 检查 DOWN、MOVE(更新圆圈位置)和 UP 仅更新beingDragged布尔值。 onDraw 在 MOVE 事件捕获的位置绘制一个圆圈。 我错过了什么?? 谢谢!

【问题讨论】:

    标签: java android touch


    【解决方案1】:

    更改圈子位置后,致电invalidate(Rect)

    这将强制视图重新绘制视图的该部分。

    确保您传递的 Rect 足够大,可以包含圆的旧位置和新位置以及几个像素的填充。

    注意: 改为从非 UI 线程调用 postInvalidate()

    【讨论】:

      猜你喜欢
      • 2018-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-27
      • 2015-07-18
      相关资源
      最近更新 更多