【问题标题】:android drag and drop gridview orderingandroid拖放gridview排序
【发布时间】:2012-12-19 09:18:41
【问题描述】:

我创建了一个拖放网格视图(使用OnDragListener)。网格项目可以相互丢弃。但是,我也希望能够重新订购它们。我实现了这一点,但还有一个主要问题:用户控制部分。

当我在阴影对象周围拖动时,我希望项目在拖动对象的同时为拖动的对象腾出空间。我已经实现了其他项目的移动,但我似乎无法找到一种方法来找出如果/何时我在两个项目之间。当我将鼠标悬停在一个项目上方时,我会收到拖动事件,但不会在这两者之间。拖动时,gridview 没有收到任何onTouchEvent 调用,甚至没有onInterceptTouchEvent 调用。

有谁知道我可以实现这一点的方法吗?

我已经试过了:

  1. 在网格视图中实现onTouchEventonInterceptTouchEvent。问题: 当我拖动项目时,gridview 没有收到任何onTouchEvent 调用,甚至没有onInterceptTouchEvent 调用。

  2. 在整个网格视图上设置另一个draglistener。问题:ACTION_DRAG_LOCATION 只被调用了几次,而不是在每次移动(位置更改)时都被调用,正如记录的那样 (!!)。

【问题讨论】:

    标签: android gridview drag-and-drop


    【解决方案1】:

    我删除了网格项目之间的填充,并为项目本身提供了一些额外的大小,这样你就永远不会在项目之间,而且在其中一个项目的一侧。我检测到我何时在某个项目的旁边并相应地移动这些项目以为我拖动的项目腾出空间。

    【讨论】:

      猜你喜欢
      • 2011-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多