2012-01-21 9 views
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; 
} 

}

答えて

0

ルックを移動することはできませんビューの移動方法のコード。この例の後、それは可能であるべきです。

関連する問題