动画上下左右判断

来源:2-3 缺口方块与点击方块的数据交换

charspan

2016-08-19 06:47

老师的动画上下左右判断错了?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


写回答 关注

2回答

  • 阿旭_
    2016-08-19 09:31:09

    如果要是按自己的逻辑实现起来总是错的,不知道正确的方法。那么可以把activity这个类的代码都发过来,我结果上下文看看是不是其它地方写错了

  • 阿旭_
    2016-08-19 09:29:46

    上下左右的问题是逻辑问题,既然你已经知道要用什么方式去判断了,逻辑问题可以自己优化一下,只要结果对就行。我讲的应该都没问题,至少我运行起来是可以玩的没发现问题。

快速实现不一样的移动拼图

实现一个支持手势的移动拼图小游戏,手把手带你开发小游戏

15576 学习 · 67 问题

查看课程

相似问题