小编use*_*847的帖子

如何在拖动操作期间取消Android中的View.OnDragListener?

view.startDrag()用来开始拖动操作.在拖动时,会收到事件OnDragListener.我也DragShadowBuilder用来显示View B拖动时的最后一张图像.

有没有办法停止或取消或中止某些外部事件或操作的拖动?例如,有2个视图,View A并且View B,我拖View BView A.在拖动时,由于某些外部事件或操作,我想取消拖动操作或取消OnDragListener(不移除我的手指view B).

代码段DragShadowBuilder:

DragShadowBuilder shadowBuilder = new DragShadowBuilder(view) {
    @Override
    public void onDrawShadow(Canvas canvas) {
        canvas.drawBitmap(b, 0, 0, new Paint());
        super.onDrawShadow(canvas);
    }
};
boolean dragSuccess = false;
dragSuccess = view.startDrag(null, shadowBuilder, view, 0);
Run Code Online (Sandbox Code Playgroud)

代码段OnDragListener:

private final class ViewDragListener implements OnDragListener {
    @Override
    public boolean onDrag(View v, DragEvent event) {
        int …
Run Code Online (Sandbox Code Playgroud)

android drag-and-drop

7
推荐指数
1
解决办法
1852
查看次数

标签 统计

android ×1

drag-and-drop ×1