我正在开发一个允许用户从Gallery小部件订购商品的应用程序。用户必须能够从“图库”窗口小部件中选择订单。订单应在图库中显示为图像,用户必须能够拖动图像并将其放置在订单按钮上。
我被拖放部分困住了。如何使用Android中的Gallery小部件拖放图像?
答案 0 :(得分:1)
从来没有这样做,所以我无法肯定地说,但这就是我将如何处理这个问题:
我会扩展现有的画廊。然后覆盖onDown方法或类似的东西,以便能够检测到哪个图像被触摸。
然后我会显示一个新的图像视图,其中包含手指所在的图像,该图像会监听触摸的移动事件。
然后在触摸发布时,您可以检查组件掉落的位置。
-
在滚动面板中编写您自己的快速图库也是一个想法,这样您就可以对事件进行很多控制;)
干杯
杰森
答案 1 :(得分:1)
一种方法是扩展Gallery并实现AdapterView.OnItemClickListener。
您的拖动操作可以实现为:
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position,
long id) {
if (!view.isTouched()) {
return false;
}
customDragController.startDrag(view, this, view, CustomDragController.MOVE);
return true;
}
有关如何实现此功能的更完整示例,包括customDragController,请查看this github项目。