Java Code Examples for android.view.View#DragShadowBuilder

The following examples show how to use android.view.View#DragShadowBuilder . These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may want to check out the right sidebar which shows the related API usage.
Example 1
@Override
public boolean onLongClick(View v) {
    TextView thisTextView = (TextView) v;
    String dragContent = "Dragged Text: " + thisTextView.getText();

    //Set the drag content and type.
    ClipData.Item item = new ClipData.Item(dragContent);
    ClipData dragData = new ClipData(dragContent,
            new String[] {ClipDescription.MIMETYPE_TEXT_PLAIN}, item);

    //Set the visual look of the dragged object.
    //Can be extended and customized. Default is used here.
    View.DragShadowBuilder dragShadow = new View.DragShadowBuilder(v);

    // Starts the drag, note: global flag allows for cross-application drag.
    v.startDragAndDrop(dragData, dragShadow, null, DRAG_FLAG_GLOBAL);

    return false;
}
 
Example 2
public boolean onTouch(View view, MotionEvent motionEvent) {
    if (motionEvent.getAction() == MotionEvent.ACTION_DOWN &&
            motionEvent.getPointerId(0) == 0) {
        // the getPointerId is to avoid executing something if someone decides to drag with
        // 2 fingers
        final ClipData data = ClipData.newPlainText("word", (String) view.getTag());
        final View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
        view.startDrag(data, shadowBuilder, view, 0);
        view.setVisibility(View.GONE);
        return true;
    } else if (motionEvent.getAction() == MotionEvent.ACTION_UP) {
        // it is a tap, if the touch was quick enough to cancel the execution
        // of ACTION_DOWN, we should consider as a tap too.
        final FlowLayout parent = (FlowLayout) view.getParent();
        if (parent.getId() == R.id.words_container) {
            moveView(wordsContainer, poemContainer, view);
        } else {
            moveView(poemContainer, wordsContainer, view);
        }
        return true;
    } else {
        return false;
    }
}
 
Example 3
Source Project: RemoteControlView   File: Tools.java    License: Apache License 2.0 6 votes vote down vote up
public static void startDrag(View view){
    DraggableInfo tag = (DraggableInfo) view.getTag();
    if (tag == null){
        tag = new DraggableInfo("Text", 0, 0, 1);
    }
    Intent intent = new Intent();
    intent.putExtra("data", tag);
    ClipData dragData = ClipData.newIntent("value", intent);
    View.DragShadowBuilder myShadow = new View.DragShadowBuilder(view);
    // 震动反馈,不需要震动权限
    view.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS, HapticFeedbackConstants.FLAG_IGNORE_GLOBAL_SETTING);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
        view.startDragAndDrop(dragData, myShadow, null, 0);
    }else{
        view.startDrag(dragData, myShadow, null, 0);
    }
}
 
Example 4
private void startDragCategory(View view, String category) {
    ClipData data = ClipData.newPlainText(category, category);
    View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
    //view.startDrag(data, shadowBuilder, view, 0);

    boolean dragstarted;
    if (Build.VERSION.SDK_INT>=24) {
        dragstarted = view.startDragAndDrop(data, shadowBuilder, view, 0);
    } else {
        dragstarted = view.startDrag(data, shadowBuilder, view, 0);
    }

    if (dragstarted) {
        mDragDropSource = mCategoriesLayout;
        if (!Categories.isSpeacialCategory(category)) {
            showRemoveDropzone();
        }
        showHiddenCategories();
    }
    cancelHide();
}
 
Example 5
@Override
public boolean onTouch(View v, MotionEvent event) {
    if (event.getAction() == MotionEvent.ACTION_DOWN) {
        TowerView towerView = (TowerView) v;

        if (mScoreBoard.getCredits() >= towerView.getTowerValue()) {
            mTowerInserter.insertTower(towerView.getTowerName());

            View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder() {
                @Override
                public void onProvideShadowMetrics(Point shadowSize, Point shadowTouchPoint) {
                    shadowSize.set(1, 1);  // must be positive
                }

                @Override
                public void onDrawShadow(Canvas canvas) {
                }
            };
            ClipData data = ClipData.newPlainText("", "");
            towerView.startDrag(data, shadowBuilder, towerView, 0);
        }
    }

    return false;
}
 
Example 6
@Override
public boolean onLongClick (View view)
{
	try
	{
		App app = (App) view.getTag ();
		AppManager appManager = app.getAppManager ();
		
		int index = appManager.indexOfPinned (app);

		ClipData.Item item = new ClipData.Item (Integer.toString (index));
		ClipData data = new ClipData (Integer.toString (index), new String[]{"text/plain"}, item);
		View.DragShadowBuilder dragShadowBuilder = new View.DragShadowBuilder (view);

		view.startDrag (data, dragShadowBuilder, item, 0);
		appManager.startedDraggingPinnedApp ();
	}
	catch (Exception ex)
	{
		ExceptionHandler exh = new ExceptionHandler (ex);
		exh.show (this.parent);
	}

	return true;
}
 
Example 7
public boolean onTouch(View view, MotionEvent motionEvent) {
    if (motionEvent.getAction() == MotionEvent.ACTION_DOWN &&
            motionEvent.getPointerId(0) == 0) {
        // the getPointerId is to avoid executing something if someone decides to drag with
        // 2 fingers
        final ClipData data = ClipData.newPlainText("word", (String) view.getTag());
        final View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
        view.startDrag(data, shadowBuilder, view, 0);
        view.setVisibility(View.GONE);
        return true;
    } else if (motionEvent.getAction() == MotionEvent.ACTION_UP) {
        // it is a tap, if the touch was quick enough to cancel the execution
        // of ACTION_DOWN, we should consider as a tap too.
        final FlowLayout parent = (FlowLayout) view.getParent();
        if (parent.getId() == R.id.words_container) {
            moveView(wordsContainer, poemContainer, view);
        } else {
            moveView(poemContainer, wordsContainer, view);
        }
        return true;
    } else {
        return false;
    }
}
 
Example 8
private void startDrag() {

        if (mDragPotential==null) return;

        AppLauncher dragitem = (AppLauncher) mDragPotential.getTag();
        String label = dragitem.getLabel();
        ClipData data = ClipData.newPlainText(label, label);
        View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(mDragPotential);

        boolean dragstarted;
        if (Build.VERSION.SDK_INT>=24) {
            dragstarted = mDragPotential.startDragAndDrop(data, shadowBuilder, mDragPotential, 0);
        } else {
            dragstarted = mDragPotential.startDrag(data, shadowBuilder, mDragPotential, 0);
        }

        if (dragstarted) {
            mBeingDragged = dragitem;
            mDragDropSource = (ViewGroup) mDragPotential.getParent();
            Log.d(TAG, "Drag started: " + dragitem.getActivityName() +  ", source = " + mDragDropSource);
            showCats(true);
            showHiddenCategories();
            // Log.d(TAG, "source = " + mDragDropSource);
            //if (mDragDropSource.getId()!=R.id.icontarget) {
            showRemoveDropzone();
            //}
        }
        mDragPotential = null;

    }
 
Example 9
Source Project: Taskbar   File: HomeActivityDelegate.java    License: Apache License 2.0 5 votes vote down vote up
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
    if(iconArrangeMode && motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
        startDragIndex = desktopIcons.indexOfChild((ViewGroup) view.getParent());

        ClipData data = ClipData.newPlainText("", "");
        View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
        view.startDrag(data, shadowBuilder, view, 0);
        view.setVisibility(View.INVISIBLE);
        return true;
    } else
        return false;
}
 
Example 10
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
    if (!problemDone && motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
        ClipData data = ClipData.newPlainText(view.getTag().toString(), view.getTag().toString());
        View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
        view.startDrag(data, shadowBuilder, view, 0);
        //view.setVisibility(View.INVISIBLE);
        return true;
    } else {
        return false;
    }
}
 
Example 11
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public final void startDrag(View.DragShadowBuilder dragShadowBuilder) {
    Point shadowSize = new Point();
    Point shadowTouchPoint = new Point();
    dragShadowBuilder.onProvideShadowMetrics(shadowSize, shadowTouchPoint);

    itemView.startDrag(null, dragShadowBuilder,
            new DragInfo(getItemId(), shadowSize, shadowTouchPoint, adapter.getLastTouchPoint()), 0);

    adapter.notifyItemChanged(getAdapterPosition());
}
 
Example 12
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
    if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
        ClipData data = ClipData.newPlainText("", "");
        View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
        view.startDrag(data, shadowBuilder, view, 0);
        view.setVisibility(View.INVISIBLE);
        return true;
    } else {
        return false;
    }
}
 
Example 13
public boolean onTouch(View view, MotionEvent motionEvent) {
	if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
		ClipData data = ClipData.newPlainText("", "");
		DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(
				view);
		view.startDrag(data, shadowBuilder, view, 0);
		view.setVisibility(View.INVISIBLE);
		return true;
	} else {
		return false;
	}
}
 
Example 14
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
	// start move on a touch event
	if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
		ClipData data = ClipData.newPlainText("", "");
		DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
		view.startDrag(data, shadowBuilder, view, 0);
		view.setVisibility(View.INVISIBLE);
		return true;
	}
	return false;

}
 
Example 15
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
	// start move on a touch event
	if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
		ClipData data = ClipData.newPlainText("", "");
		DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
		view.startDrag(data, shadowBuilder, view, 0);
		view.setVisibility(View.INVISIBLE);
		return true;
	}
	return false;

}
 
Example 16
public View.DragShadowBuilder getShadowBuilder(View itemView, Point touchPoint) {
    return new DragSortShadowBuilder(itemView, touchPoint);
}
 
Example 17
@Override public View.DragShadowBuilder getShadowBuilder(View itemView, Point touchPoint) {
    return new NoForegroundShadowBuilder(itemView, touchPoint);
}
 
Example 18
Source Project: OPFIab   File: TrivialActivity.java    License: Apache License 2.0 4 votes vote down vote up
@Override
public View.DragShadowBuilder getShadowBuilder(final View itemView,
                                               final Point touchPoint) {
    return new DragSortShadowBuilder(itemView, touchPoint);
}