【发布时间】:2011-06-01 18:21:12
【问题描述】:
我正在尝试让用户可以从一个列表视图中拖动一个文本视图,然后将其拖放到另一个列表视图中,但我发现这非常困难。
到目前为止,我发现的最大问题是 onTouchEvents 似乎只能在 ACTION_DOWN 事件起源的视图中听到。我将单击一个列表并在那里听到 ACTION_DOWN。然后我将拖到列表之外并放开另一个列表。但是,无论我要去哪里,都只会为原始列表调用 onTouchEvent。我认为这就像在接收列表中侦听 ACTION_UP 事件一样简单;但是即使我不在原始列表中,也会在原始列表中调用它。
到目前为止,我所拥有的有点混乱。当 onLongTouchEvent 被调用时,列表告诉主 Activity 开始拖动一个 draggableTextView(它有一个 moveTo 方法)。由于在原始列表上继续调用移动事件,因此我不断设置此 draggableTextView 的位置。但我无法将其插入另一个列表,因为我无法弄清楚我要放手的是什么。
【问题讨论】:
-
为什么在同一个活动/视图中有 2 个列表视图?
-
了解 AOSP Launcher 应用程序如何在不同视图中拖放可能会有所帮助。来源在这里:android.git.kernel.org/?p=platform/packages/apps/…
-
这不是手机,而是安卓平板。我没有用于 pad 的模拟器,所以我在手机上的一项活动中使用两个列表即兴创作。
标签: java android listview drag-and-drop