Android的动画效果分为两种,一种是tweened animation(补间动画),第二种是frame by frame animation。一般我们用的是第一种。补间动画又分为AlphaAnimation,透明度转换 RotateAnimation,旋转转换 ScaleAnimation,缩放转换 TranslateAnimation 位置转换(移动)。那么如何实现所有的activity之间都是用动画呢,而不是一个一个的写.....
1、首先在res目录下新建anim目录,并且创建anim_enter.xml文件代码如下:
<?xml version="1.0" encoding="utf-8"?><set android:interpolator="@android:anim/decelerate_interpolator"
xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:duration="@android:integer/config_mediumAnimTime"
android:pivotX="69.99999%" android:pivotY="100.0%" android:fromXScale="0.0"
android:toXScale="1.0" android:fromYScale="0.0" android:toYScale="1.0" />
<alpha android:duration="@android:integer/config_mediumAnimTime"
android:fromAlpha="0.0" android:toAlpha="1.0" />
</set>
2、anim_exit.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<set android:interpolator="@android:anim/accelerate_interpolator"
xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:duration="@android:integer/config_mediumAnimTime"
android:pivotX="69.99999%" android:pivotY="100.0%" android:fromXScale="1.0"
android:toXScale="0.0" android:fromYScale="1.0" android:toYScale="0.0" />
<alpha android:duration="@android:integer/config_mediumAnimTime" android:fromAlpha="1.0" android:toAlpha="0.0" />
</set>
3、back_enter.xml
<?xml version="1.0" encoding="UTF-8"?>
<set android:interpolator="@android:anim/decelerate_interpolator"
xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:duration="@android:integer/config_mediumAnimTime" android:pivotX="50.0%" android:pivotY="50.0%" android:fromXScale="1.5" android:toXScale="1.0" android:fromYScale="1.5" android:toYScale="1.0" />
<alpha android:duration="@android:integer/config_mediumAnimTime" android:fromAlpha="0.4" android:toAlpha="1.0" />
</set>
4、back_exit.xml
<?xml version="1.0" encoding="UTF-8"?>
<set android:interpolator="@android:anim/decelerate_interpolator"
xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:duration="@android:integer/config_mediumAnimTime" android:pivotX="50.0%" android:pivotY="50.0%" android:fromXScale="1.0" android:toXScale="0.4" android:fromYScale="1.0" android:toYScale="0.4" />
<alpha android:duration="@android:integer/config_mediumAnimTime" android:fromAlpha="1.0" android:toAlpha="0.0" />
</set>
5、接下来在文件夹res下的values中的strings.xml文件中声明动画样式
<style mce_bogus="1" name="AnimationActivity" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/anim_enter</item>
<item name="android:activityOpenExitAnimation">@anim/anim_exit</item>
<item name="android:activityCloseEnterAnimation">@anim/back_enter</item>
<item name="android:activityCloseExitAnimation">@anim/back_exit</item>
</style>
6、在AndroidManifest.xml文件声明样式
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/ThemeActivity">
</application>
具体的效果可以看看下面的象棋app格式的中各个activity之间的跳转。先上图
- 大小: 133.3 KB
- 大小: 127.7 KB
- 大小: 141.7 KB
分享到:
相关推荐
8. **Intent通信**:在不同Activity间传递数据,比如在游戏主界面和游戏设置界面之间切换。 9. **异步处理**:可能使用AsyncTask或其他异步方法加载游戏资源或处理复杂的计算(如AI决策)。 10. **权限管理**:如果...
此外,考虑到用户体验,源码中还会涉及到动画效果的实现,如使用ObjectAnimator或ValueAnimator实现棋子移动的平滑过渡,以及使用Transition进行界面切换的效果。同时,源码也会包含错误处理和异常捕获,确保程序的...
《Android手机游戏中国象棋源码解析》 中国象棋,作为一款深受广大人民群众喜爱的传统棋类游戏,其在移动设备上的实现也颇受欢迎。本文将深入探讨一款针对Android平台的中国象棋游戏源码,虽然作者自评其编写质量不...
- **Activity**:作为Android应用的基本单元,源码中的Activity通常用于处理用户界面和业务逻辑,展示游戏主界面。 - **布局文件**(XML):用于定义用户界面的结构,包括棋盘、棋子图像以及按钮等元素的布局。 -...
5. **Activity和Fragment管理**:游戏可能包含多个屏幕,如主菜单、游戏界面、设置等,这涉及到Activity和Fragment的生命周期管理,以及他们之间的切换和数据传递。 6. **保存和恢复游戏状态**:为了实现游戏的暂停...
理解Activity的创建、暂停、恢复和销毁过程对于确保游戏的正确运行至关重要,例如在切换到后台或设备旋转时保持游戏状态。 3. **Layout设计**:使用XML布局文件设计游戏界面,包括棋盘、棋子图像、按钮等元素的摆放...
2. **图形界面设计**:Android象棋游戏的界面设计是用户交互的关键,源码中会包含自定义View的实现,例如棋盘的绘制、棋子的动画效果等,这些都是Android图形编程的重要组成部分。 3. **游戏逻辑算法**:中国象棋的...
- **活动管理**:Android应用程序基于Activity进行交互,象棋游戏可能包含多个Activity,如主菜单、游戏界面、设置等,需要理解Activity的生命周期和切换。 2. **游戏编程基础** - **游戏逻辑**:象棋游戏规则...
该Android源码是一个实现中国棋(也称象棋)博弈的应用程序,主要功能包括人机对弈和人人对战模式。对于想要学习Android游戏开发,尤其是棋类游戏开发的开发者来说,这是一个很好的学习资源。以下是这个项目涉及的...