2
내 응용 프로그램에서 드래그 앤 드롭 이미지 뷰를 원한다 Screen.I의 터치로 터치하면 4 방향으로 드래그 할 수 있지만 Botton으로 드래그하여 오른쪽으로 드래그하고 Imageview 드래그를 사용하지 않기를 원합니다. srceen에서 드래그 앤 드롭 이미지 뷰에 대한안드로이드에서 오른쪽 및 왼쪽 끌기 ImageView를 비활성화하는 방법?
내 코드 :
public class MainActivity extends Activity implements OnTouchListener,
OnDragListener {
private static final String LOGCAT = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.textView1).setOnTouchListener(this);
findViewById(R.id.pinkLayout).setOnDragListener(this);
findViewById(R.id.yellowLayout).setOnDragListener(this);
}
public boolean onTouch(View view, MotionEvent motionEvent) {
if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view);
view.startDrag(null, shadowBuilder, view, 0);
view.setVisibility(View.INVISIBLE);
return true;
} else {
return false;
}
}
public boolean onDrag(View layoutview, DragEvent dragevent) {
int action = dragevent.getAction();
switch (action) {
case DragEvent.ACTION_DRAG_STARTED:
Log.d(LOGCAT, "Drag event started");
break;
case DragEvent.ACTION_DRAG_ENTERED:
Log.d(LOGCAT, "Drag event entered into " + layoutview.toString());
break;
case DragEvent.ACTION_DRAG_EXITED:
Log.d(LOGCAT, "Drag event exited from " + layoutview.toString());
break;
case DragEvent.ACTION_DROP:
Log.d(LOGCAT, "Dropped");
View view = (View) dragevent.getLocalState();
ViewGroup owner = (ViewGroup) view.getParent();
owner.removeView(view);
LinearLayout container = (LinearLayout) layoutview;
container.addView(view);
view.setVisibility(View.VISIBLE);
break;
case DragEvent.ACTION_DRAG_ENDED:
Log.d(LOGCAT, "Drag ended");
break;
default:
break;
}
return true;
}
}
어떻게 그것을 해결하기 위해? 감사
thanks.how 유형? –
정적 final int NONE = 0; 정적 최종 int DRAG = 1; int mode = NONE; –
왼쪽과 오른쪽이 작동하지 않습니다. 화면에서 왼쪽과 오른쪽으로 이동하지 못하게하십시오. –