2012-04-19 169 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

回答