0
ボタンをY方向にドラッグアンドドロップするだけです。私はこの機能を達成しました。しかし、画面の境界を越えて消えてしまった。私の目標を達成するのを助けてください。ボタンをドラッグ&ドロップしますか?
は、ここに私のコード
public class ChoiceTouchListener implements View.OnTouchListener{
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
int x = (int) motionEvent.getRawX();
int y = (int) motionEvent.getRawY();
DisplayMetrics metrics = getResources().getDisplayMetrics();
switch (motionEvent.getAction() & MotionEvent.ACTION_MASK){
case MotionEvent.ACTION_DOWN:
RelativeLayout.LayoutParams tparams = (RelativeLayout.LayoutParams) view.getLayoutParams();
changey = y- tparams.topMargin;
break;
case MotionEvent.ACTION_UP:
break;
case MotionEvent.ACTION_POINTER_DOWN:
break;
case MotionEvent.ACTION_POINTER_UP:
break;
case MotionEvent.ACTION_MOVE:
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) view.getLayoutParams();
params.topMargin = y-changey;
view.setLayoutParams(params);
break;
}
rootlayout.invalidate();
return true;
}
}
コード内に「v」とは何ですか? onTouchのビューパラメータ。 – Hasnain
onTouchにコードを書いて、vをビュー – Anmol
で置き換えることができます。このコードを試してみましょう。 – Hasnain