android.view.View#startDrag ( )源码实例Demo

下面列出了android.view.View#startDrag ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: cannonball-android   文件: PoemBuilderActivity.java
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;
    }
}
 
源代码2 项目: RemoteControlView   文件: Tools.java
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);
    }
}
 
源代码3 项目: LaunchTime   文件: MainActivity.java
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();
}
 
@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;
}
 
源代码5 项目: cannonball-android   文件: PoemBuilderActivity.java
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;
    }
}
 
源代码6 项目: Taskbar   文件: HomeActivityDelegate.java
@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;
}
 
源代码7 项目: Primary   文件: SortingActivity.java
@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;
    }
}
 
源代码8 项目: Passbook   文件: EditFragment.java
@Override
public boolean onLongClick(View v) {
    ClipData not_used_clip = ClipData.newPlainText("", "");
    if(Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
        v.startDrag(not_used_clip, new View.DragShadowBuilder(v), v, 0);
    }
    else {
        v.startDragAndDrop(not_used_clip, new View.DragShadowBuilder(v), v, 0);
    }
    mDragListener.startDrag(v);
    return true;
}
 
源代码9 项目: android-profile   文件: StoreExampleActivity.java
@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;
    }
}
 
源代码10 项目: WayHoo   文件: DragSortGridView.java
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view,
		int position, long id) {
	view.startDrag(null, new View.DragShadowBuilder(view), position, 0);
	if (onReorderingListener != null)
		onReorderingListener.beginRecordering(parent, view, position,
				id);
	return true;
}
 
源代码11 项目: codeexamples-android   文件: DragActivity.java
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;
	}
}
 
源代码12 项目: codeexamples-android   文件: DragActivity.java
@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;

}
 
源代码13 项目: codeexamples-android   文件: DragActivity.java
@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;

}
 
 方法所在类
 同类方法