android 小猴子摘桃代码
时间: 2023-11-17 11:07:47 浏览: 152
c代码-猴子摘桃。
5星 · 资源好评率100%
以下是 Android 中小猴子摘桃的代码:
```java
public class MonkeyPeachActivity extends AppCompatActivity {
private ImageView mMonkey;
private ImageView mPeach;
private Animation mJumpAnimation;
private Animation mFallAnimation;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_monkey_peach);
mMonkey = findViewById(R.id.iv_monkey);
mPeach = findViewById(R.id.iv_peach);
// 初始化跳跃动画
mJumpAnimation = AnimationUtils.loadAnimation(this, R.anim.jump);
mJumpAnimation.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {}
@Override
public void onAnimationEnd(Animation animation) {
// 跳跃动画结束后,播放摘桃动画
mPeach.startAnimation(mFallAnimation);
}
@Override
public void onAnimationRepeat(Animation animation) {}
});
// 初始化摘桃动画
mFallAnimation = AnimationUtils.loadAnimation(this, R.anim.fall);
mFallAnimation.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {}
@Override
public void onAnimationEnd(Animation animation) {
// 摘桃动画结束后,重新播放跳跃动画
mMonkey.startAnimation(mJumpAnimation);
}
@Override
public void onAnimationRepeat(Animation animation) {}
});
// 开始播放跳跃动画
mMonkey.startAnimation(mJumpAnimation);
}
}
```
需要先在 `res` 目录下创建 `anim` 目录,并在其中放置 `jump.xml` 和 `fall.xml` 两个动画资源文件。
`jump.xml` 文件内容如下:
```xml
<set xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 跳跃 -->
<translate
android:duration="500"
android:fromYDelta="0"
android:toYDelta="-400"
android:interpolator="@android:anim/accelerate_decelerate_interpolator" />
<!-- 往右移动 -->
<translate
android:duration="500"
android:fromXDelta="0"
android:toXDelta="200"
android:interpolator="@android:anim/accelerate_decelerate_interpolator" />
<!-- 往左移动 -->
<translate
android:duration="500"
android:startOffset="500"
android:fromXDelta="200"
android:toXDelta="0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator" />
<!-- 落下 -->
<translate
android:duration="500"
android:startOffset="500"
android:fromYDelta="-400"
android:toYDelta="0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator" />
</set>
```
`fall.xml` 文件内容如下:
```xml
<set xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 摘桃 -->
<scale
android:duration="500"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:toXScale="0.5"
android:toYScale="0.5"
android:pivotX="50%"
android:pivotY="0%" />
<!-- 下落 -->
<translate
android:duration="500"
android:fromYDelta="0"
android:toYDelta="400"
android:interpolator="@android:anim/accelerate_decelerate_interpolator" />
<!-- 恢复大小 -->
<scale
android:duration="500"
android:startOffset="500"
android:fromXScale="0.5"
android:fromYScale="0.5"
android:toXScale="1.0"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="0%" />
</set>
```
以上代码实现了小猴子摘桃的动画效果,如果需要完整的工程代码可以访问以下链接:
https://github.com/JasonWu0000/MonkeyPeachDemo
阅读全文