動畫上下左右判斷
老師的動畫上下左右判斷錯了?Toast的結果和實際的不一致
public void changeDataByImageView(final ImageView mImageView) {
// 創建動畫,設置方向、移動距離
TranslateAnimation translateAnimation = null;
if (mImageView.getX() > iv_null_ImageView.getX()) {// 在空方塊下面
// 往上移動
translateAnimation = new TranslateAnimation(0.1f, -mImageView.getWidth(), 0.1f, 0.1f);
Toast.makeText(MainActivity.this, "上移", Toast.LENGTH_SHORT).show();
} else if (mImageView.getX() < iv_null_ImageView.getX()) {//
// 下
translateAnimation = new TranslateAnimation(0.1f, mImageView.getWidth(), 0.1f, 0.1f);
Toast.makeText(MainActivity.this, "下移", Toast.LENGTH_SHORT).show();
} else if (mImageView.getY() > iv_null_ImageView.getY()) {//
// 左
translateAnimation = new TranslateAnimation(0.1f, 0.1f, 0.1f, -mImageView.getWidth());
Toast.makeText(MainActivity.this, "左移", Toast.LENGTH_SHORT).show();
} else if (mImageView.getY() < iv_null_ImageView.getY()) {//
// 右
translateAnimation = new TranslateAnimation(0.1f, 0.1f, 0.1f, mImageView.getWidth());
Toast.makeText(MainActivity.this, "右移", Toast.LENGTH_SHORT).show();
}
// 設置動畫時長
translateAnimation.setDuration(70);
// 動畫結束之后停留
translateAnimation.setFillAfter(true);
// 動畫結束后真正的把數據交換
translateAnima
2016-08-19
如果要是按自己的邏輯實現起來總是錯的,不知道正確的方法。那么可以把activity這個類的代碼都發過來,我結果上下文看看是不是其它地方寫錯了
2016-08-19
上下左右的問題是邏輯問題,既然你已經知道要用什么方式去判斷了,邏輯問題可以自己優化一下,只要結果對就行。我講的應該都沒問題,至少我運行起來是可以玩的沒發現問題。