2012-04-19 131 views
0

我在Android上構建應用程序還不太熟悉。我確實有一些Java開發經驗,但我現在所做的項目首先是Android。Android移動對象觸摸

我正在構建一個基本的紙牌遊戲,我希望卡移動到我觸摸的特定位置。 我做到了,卡片移動到了觸摸點,但是一旦動畫結束,它就會彈回起始位置。

我添加了一個圖像重新定位代碼,但現在它從這一點開始動畫。 任何想法,任何人?

我做的代碼是:

public class FinallyActivity extends Activity { 
     /** Called when the activity is first created. */ 

     EditText DBG; 
     ImageView iv; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     DBG = (EditText) findViewById(R.id.editText1); 
     iv = (ImageView) findViewById(R.id.imV1);  
    } 

    private void RunAnimations(MotionEvent event) { 
    // Animation b = AnimationUtils.loadAnimation(this,R.anim.cardtrans); 
     int xStart, yStart, dx, dy; 

     xStart = iv.getLeft(); 
     yStart = iv.getTop(); 
     Animation b = new TranslateAnimation(Animation.ABSOLUTE,0,Animation.ABSOLUTE,event.getX()-50, 
       Animation.ABSOLUTE,0,Animation.ABSOLUTE,event.getY()- 105); 
     b.setDuration(3000); 
     iv.clearAnimation(); 
     iv.startAnimation(b); 

    } 

    @Override 
    public boolean onTouchEvent(MotionEvent event) { 

     if (event.getAction() == MotionEvent.ACTION_DOWN) { 
      RunAnimations(event); 
     } 

       iv.layout((int)event.getX()-25,(int) event.getY()-105, 
       (int)event.getX()+25,(int) event.getY()-35); 
     return true; 

    } 

} 

謝謝大家!

+0

下面是一個例子http://thegeekyland.blogspot.com/2015/12/android-animations-explained.html – Arlind 2015-12-06 13:44:44

回答