Android 如何在拖动后使EditText可编辑
我正在创建一个可拖动的editText,我使用editText允许用户更改文本。但是我现在的问题是我不能再编辑文本了,因为它检测到文本的触摸/拖动 有什么解决办法吗Android 如何在拖动后使EditText可编辑,android,Android,我正在创建一个可拖动的editText,我使用editText允许用户更改文本。但是我现在的问题是我不能再编辑文本了,因为它检测到文本的触摸/拖动 有什么解决办法吗 private final class MyTouchListener implements OnTouchListener { public boolean onTouch(View view, MotionEvent motionEvent) { switch (motionEvent.getActio
private final class MyTouchListener implements OnTouchListener {
public boolean onTouch(View view, MotionEvent motionEvent) {
switch (motionEvent.getAction() & MotionEvent.ACTION_MASK)
{
case MotionEvent.ACTION_DOWN:
ClipData data = ClipData.newPlainText("", "");
DragShadowBuilder shadowBuilder = new DragShadowBuilder(view);
view.startDrag(data, shadowBuilder, view, 0);
view.setVisibility(View.VISIBLE);
break;
case MotionEvent.ACTION_MOVE:
break;
case MotionEvent.ACTION_UP:
break;
case MotionEvent.ACTION_HOVER_EXIT:
break;
}
return true;
}
}
我有一个拖拽的听者
class MyDragListener implements OnDragListener {
@Override
public boolean onDrag(View v, DragEvent event) {
switch (event.getAction()) {
case DragEvent.ACTION_DRAG_STARTED:
break;
case DragEvent.ACTION_DRAG_ENTERED:
break;
case DragEvent.ACTION_DRAG_EXITED:
break;
case DragEvent.ACTION_DROP:
View view = (View) event.getLocalState();
paramsBlock = new RelativeLayout.LayoutParams(view.getWidth(), view.getWidth());
paramsBlock.leftMargin = (int) event.getX() - (view.getWidth()/2);//- ((imageView.getWidth()/9)/2);
paramsBlock.topMargin = (int) event.getY() -(view.getHeight()/2);//-((imageView.getWidth()/9)/2);
view.setLayoutParams(paramsBlock);
break;
case DragEvent.ACTION_DRAG_ENDED:
default:
break;
}
return true;
}
}
是否可以使用
onLongClick
Listener?您可以使用onlongclickstener
开始拖动。这应该允许您编辑该字段,因为控件的默认单击或触摸侦听器不会被覆盖
尝试类似的方法来启动你的拖动
OnLongClickListener longClickListener = new OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
ClipData data = ClipData.newPlainText("", "");
DragShadowBuilder shadowBuilder = new DragShadowBuilder(view);
view.startDrag(data, shadowBuilder, view, 0);
view.setVisibility(View.VISIBLE);
return true;
}
};
希望这能帮上忙很高兴我能帮上忙你能帮我解决这个问题吗?如何在拖动后放置拖放图像?必须使用侦听器才能知道何时显示拖放图像如何拖放图像?