package com.example.myapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.DragEvent;
import android.view.View;
public class MainActivity extends AppCompatActivity {
String TAG="-------------------";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
View t1 = findViewById(R.id.t1);
View t2 = findViewById(R.id.t2);
View t3 = findViewById(R.id.t3);
View t4 = findViewById(R.id.t4);
View t5 = findViewById(R.id.t5);
View t6 = findViewById(R.id.t6);
t1.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
t1.startDragAndDrop(null, new View.DragShadowBuilder(v), v, 0);
// Log.e(TAG, "onLongClick: " );
return true;
}
});
t2.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
t2.startDragAndDrop(null, new View.DragShadowBuilder(v), v, 0);
// Log.e(TAG, "onLongClick: " );
return true;
}
});
t1.setOnDragListener(new View.OnDragListener() {
@Override
public boolean onDrag(View v, DragEvent event) {
switch (event.getAction()){
case DragEvent.ACTION_DRAG_STARTED:
Log.e(TAG, "onDrag: ACTION_DRAG_STARTED" );
return true;
case DragEvent.ACTION_DRAG_ENTERED:
Log.e(TAG, "onDrag: ACTION_DRAG_ENTERED" );
return true;
case DragEvent.ACTION_DRAG_EXITED:
// Log.e(TAG, "onDrag: ACTION_DRAG_EXITED" );
return true;
case DragEvent.ACTION_DRAG_ENDED:
// Log.e(TAG, "onDrag: ACTION_DRAG_ENDED" );
return true;
case DragEvent.ACTION_DROP:
// Log.e(TAG, "onDrag: ACTION_DROP" );
return true;
case DragEvent.ACTION_DRAG_LOCATION:
// Log.e(TAG, "onDrag: ACTION_DRAG_LOCATION" );
return true;
}
return false;
}
});
// t2.setOnDragListener(new View.OnDragListener() {
// @Override
// public boolean onDrag(View v, DragEvent event) {
// switch (event.getAction()){
// case DragEvent.ACTION_DRAG_STARTED:
// Log.e(TAG, "onDrag: ACTION_DRAG_STARTED" );
// return true;
// case DragEvent.ACTION_DRAG_ENTERED:
// Log.e(TAG, "onDrag: ACTION_DRAG_ENTERED" );
// break;
// case DragEvent.ACTION_DRAG_EXITED:
// Log.e(TAG, "onDrag: ACTION_DRAG_EXITED" );
// break;
// case DragEvent.ACTION_DRAG_ENDED:
// Log.e(TAG, "onDrag: ACTION_DRAG_ENDED" );
//
// break;
// case DragEvent.ACTION_DROP:
// Log.e(TAG, "onDrag: ACTION_DROP" );
//
// break;
// case DragEvent.ACTION_DRAG_LOCATION:
// Log.e(TAG, "onDrag: ACTION_DRAG_LOCATION" );
//
// break;
// }
// return false;
// }
// });
// t3.setOnDragListener(new View.OnDragListener() {
// @Override
// public boolean onDrag(View v, DragEvent event) {
// switch (event.getAction()){
// case DragEvent.ACTION_DRAG_STARTED:
// Log.e(TAG, "onDrag: ACTION_DRAG_STARTED" );
// break;
// case DragEvent.ACTION_DRAG_ENTERED:
// Log.e(TAG, "onDrag: ACTION_DRAG_ENTERED" );
// break;
// case DragEvent.ACTION_DRAG_EXITED:
// Log.e(TAG, "onDrag: ACTION_DRAG_EXITED" );
// break;
// case DragEvent.ACTION_DRAG_ENDED:
// Log.e(TAG, "onDrag: ACTION_DRAG_ENDED" );
//
// break;
// case DragEvent.ACTION_DROP:
// Log.e(TAG, "onDrag: ACTION_DROP" );
//
// break;
// case DragEvent.ACTION_DRAG_LOCATION:
// Log.e(TAG, "onDrag: ACTION_DRAG_LOCATION" );
//
// break;
// }
// return false;
// }
// });
}
}
case 里面不要break return true;试试