2012-12-19 36 views
1

我创建了一个拖放gridview(使用OnDragListener)。网格物品可以放在另一个上。不过,我也希望能够重新订购它们。我实现了这一点,但仍然存在一个主要问题:用户控制部分。android拖放gridview命令

当我拖动我的阴影对象时,我想让项目为我的拖动对象腾出空间,同时拖动它。我已经实施了其他项目的移动,但我似乎无法找到一种方式来找出如果/当我在两项之间。当我在一个项目上面胡佛时,我会得到拖曳事件,但是在那之间不会。当我拖动时,gridview不会收到任何onTouchEvent调用,甚至不会调用onInterceptTouchEvent

有没有人知道我可以执行此操作的方式?

我已经尝试过:

  1. 实现在GridView onTouchEventonInterceptTouchEvent。问题: 当我拖动一个项目时,gridview没有得到任何onTouchEvent调用,甚至没有调用onInterceptTouchEvent调用。

  2. 在整个gridview上设置另一个draglistener。问题:ACTION_DRAG_LOCATION只能被调用几次,而不是一举一动(位置变化),如记录(!!)。

回答

0

我删除了电网项目之间的填充,并给项目themselfes一些额外的大小,让你永远不会插图中的项目,同时也对项目中的一个侧面。当我在物品的侧面时,我会检测并移动相应的物品,为我的拖动物品留出空间。