Android界面特效实战:页面切换与动画效果

需积分: 9 2 下载量 160 浏览量 更新于2024-07-21 收藏 4.09MB PDF 举报
"这篇资料主要汇总了各种实用的界面效果,特别关注了Android平台上的Activity页面切换动画,适合初学者参考学习。" 在Android开发中,界面效果是提升用户体验的关键因素之一,尤其在Activity之间的页面切换,良好的过渡动画能够使应用更加流畅自然。Android 2.0版本之后引入了`overridePendingTransition()`方法,使得开发者可以自定义Activity切换时的进出动画。 首先,我们来看一下如何使用`overridePendingTransition()`方法。这个方法接收两个参数:第一个参数定义了当前Activity(前一个Activity)退出时的动画,第二个参数则定义了新启动的Activity(后一个Activity)进入时的动画。例如,在给出的代码片段中: ```java @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.SplashScreen); new Handler().postDelayed(new Runnable() { @Override public void run() { Intent mainIntent = new Intent(SplashScreen.this, AndroidNews.class); startActivity(mainIntent); SplashScreen.this.finish(); // 设置页面切换动画 overridePendingTransition(R.anim.mainfadein, R.anim.splashfadeout); } }, 3000); } ``` 这里,`mainfadein`和`splashfadeout`分别代表了自定义的动画资源,用于定义Activity的淡入淡出效果。 除了自定义动画资源,Android SDK还提供了一些内置的动画效果,例如: 1. 淡入淡出效果: ```java overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out); ``` 2. 由左向右滑入效果: ```java overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right); ``` 3. 缩放(zoom)效果,模仿iPhone的进入和退出动画: ```java overridePendingTransition(R.anim.zoomin, R.anim.zoomout); ``` 这里需要在项目的res/anim目录下创建`zoomin.xml`和`zoomout.xml`文件,定义相应的缩放动画。 例如,`zoomin.xml`可以这样编写: ```xml <set xmlns:android="http://schemas.android.com/apk/res/android"> <scale android:fromXScale="0.0" android:toXScale="1.0" android:fromYScale="0.0" android:toYScale="1.0" android:pivotX="50%" android:pivotY="50%" android:duration="500" /> </set> ``` `zoomout.xml`则相反,定义从1.0到0.0的缩放比例。 通过这些示例,我们可以了解到在Android中自定义Activity动画的基本方法。结合不同的动画效果和组合,开发者可以创造出更多丰富的用户体验,使应用更具吸引力。对于Android开发者来说,掌握这些技巧对于提升应用品质至关重要。