【发布时间】:2012-11-23 22:21:49
【问题描述】:
我有一个带有动态添加到视图组中的文本视图的视图组。我将如何添加在其他文本视图之间拖放文本视图的功能。
有没有办法检测你把它放在哪个视图上。
如果它更容易,文本视图可以是按钮。
【问题讨论】:
-
最好是 8 岁及以上,但如果是 11 岁,我不会大惊小怪
标签: android drag-and-drop textview viewgroup
我有一个带有动态添加到视图组中的文本视图的视图组。我将如何添加在其他文本视图之间拖放文本视图的功能。
有没有办法检测你把它放在哪个视图上。
如果它更容易,文本视图可以是按钮。
【问题讨论】:
标签: android drag-and-drop textview viewgroup
在 API 11 及更高版本中,您可以使用内置功能: https://developer.android.com/guide/topics/ui/drag-drop.html
在以前的版本中,您也可以手动完成:
理论上,您必须为您的视图添加一个 onTouchListener,它会在向下操作时保存相对于视图位置的触摸位置。
然后,在接收到触摸移动事件时,您设置视图的位置以反映该事件。
在接收到 up 事件时,用户已放下视图,您检查当前坐标并将它们与其他视图进行比较,如果它在另一个视图之前,则将该视图向上移动并将移动视图的位置设置为再次与其他人保持一致。
您可以通过仅更改这些值将拖动限制为仅 x/仅 y。
【讨论】: