Android如何用手指移动视图

时间:2012-05-15 22:04:35

标签: android android-animation

我正在尝试基于触摸平滑地移动其父级内部的视图。我有OnTouchListener工作和跟踪动作。我如何实际移动视图?我尝试过使用RelativeLayout.LayoutParameters并设置边距,但边距只接受int值,这使视图变得紧张。我尝试过使用TranslateAnimation,这会让我使用浮动,但这只会移动画布,所以我的触摸事件会被遗忘。有没有人找到顺利做到这一点的方法?

1 个答案:

答案 0 :(得分:2)

最佳解决方案是重写自定义ViewGroup子类,这会折磨你的灵魂。如果成功,请确保你有超人的神经:)。

第二种解决方案更容易,但当且仅当您的视图包含图像时才有效。因此,您可以编写自定义View子类并在onDraw()方法的Canvas上优化图像。

我的最后一个解决方案是OpenGL。

此外,我不确定,但也许相对布局有点布局更新边距,然后invalidate()视图可能会工作。

祝你好运!