1
ボタンをドラッグ&ドロップできますが、ドロップしたボタンはドロップされたボタンを移動する方法ではありません。 私はdropedボタン画像のコピーを移動したいが、イムは、ボタンを落とした後に移動しようとしているが、ドロップされたボタンの画像は、ランチャーでアンドロイドでドラッグアンドドロップした後にドロップされたオブジェクトを移動することは可能ですか?
public class Drop extends Activity implements OnTouchListener {
Button img;
ImageView image;
LinearLayout.LayoutParams lp ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
img = (Button)findViewById(R.id.img);
img.setDrawingCacheEnabled(true);
lp = new LinearLayout.LayoutParams(
new MarginLayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT));
img.setOnTouchListener(this);
layout = (LinearLayout) findViewById(R.id.vg);
}
@Override
public boolean onTouch(View v, MotionEvent me) {
// TODO Auto-generated method stub
if (me.getAction() == MotionEvent.ACTION_DOWN) {
int x1 = (int)me.getX();
int y1 = (int)me.getY();
image = new ImageView(this);
image.setImageBitmap(img.getDrawingCache());
layout.addView(image,lp);
if(v==image)
{
lp.setMargins(x1, y1, 0, 0);
image.setDrawingCacheEnabled(true);
image.setLayoutParams(lp);
}
}
if (me.getAction() == MotionEvent.ACTION_UP) {
}
else if (me.getAction() == MotionEvent.ACTION_MOVE) {
int x1 = (int)me.getX();
int y1 = (int)me.getY();
image.setPadding((int) me.getRawX(), (int) me.getRawY(), 0, 0);
image.invalidate();
if(v==image)
{
lp.setMargins(x1, y1, 0, 0);
image.setDrawingCacheEnabled(true);
image.setLayoutParams(lp);
}
}
return false;
}
}