首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >安卓:如何在将项目拖到边缘时自动垂直滚动GridView

安卓:如何在将项目拖到边缘时自动垂直滚动GridView
EN

Stack Overflow用户
提问于 2012-09-02 20:42:15
回答 1查看 2.3K关注 0票数 2

我正试图在安卓( android )的GridView上实现拖放,但当我将item拖到屏幕边缘时,GridView无法滚动。如何实现此功能?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-28 17:23:33

首先,如果你不需要支持Android2.x( API <11 ),这个Andorid Drag and Drop tutorial就是你想要的。我从来没有尝试过这种方式,因为我必须在2.x上实现它,但我看到它看起来非常简单。

要实现自动滚动,我猜您可以在网格视图上使用ACTION_DRAG_EXITEDACTION_DRAG_LOCATION,并在看到位置靠近视图边界时手动触发滚动。

如果你不得不在2.x上实现它,那么它将变得更加困难,你基本上需要自己实现所有的拖动事件,或者它们的一个子集。我用ListView做了一次,你要做的是:

使用touchEvent.

  • Use
  • gridView ACTION_MOVE,ACTION_DOWN,ACTION_UP来触发拖动事件

在GridView项( setDrawingCacheEnabled )上启用图形缓存,并使用getDrawingCache()复制DRAG_START上视图的位图。然后,您需要做的就是在ACTION_MOVE事件提供的位置使用绘制在GridView顶部的位图。

这并不容易,但如果你慢慢来,你会设法做到的。

更重要的是,我今天还没有检查,但也许你可以尝试谷歌一下,看看是否有人花时间实现了它,并发布了它的开源。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12236035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档