大家使用Android的原生UI都知道,Android的Activity跳转就是很生硬的切换界面。其实Android的Activity跳转可以设置各种动画。下面给大家看看效果:
Android的Activity跳转动画各种效果整理_第1张图片 
Android的Activity跳转动画各种效果整理_第2张图片
实现非常简单,用overridePendingtransition(int inId, int outId)即可实现。inId是下一界面进入效果的xml文件的id,outId是当前界面退出效果的xml文件id。

效果是用xml文件写的,首先要在res文件夹下建立anim文件夹,然后把动画效果xml文件放到里面去。
下面是放大进入,缩小退出的xml文件:
zoomin.xml:
复制代码 代码如下:
<?xml version="1.0" encoding="utf-8"?>
android:interpolator="@android:anim/decelerate_interpolator">
android:fromYScale="0.1" android:toYScale="1.0"
android:pivotX="50%p" android:pivotY="50%p"
android:duration="300" />

android:fromAlpha="0.1"
android:toAlpha="1.0"
android:duration="300" />


zoomout.xml
复制代码 代码如下:
<?xml version="1.0" encoding="utf-8"?>
android:interpolator="@android:anim/decelerate_interpolator"
android:zAdjustment="top">
android:fromYScale="1.0" android:toYScale=".5"
android:pivotX="50%p" android:pivotY="50%p"
android:duration="300" />

android:duration="300"/>


MainActivity.java:
复制代码 代码如下:
public class MainActivity extends Activity implements OnClickListener {
private Button btn1;
private Button btn2;
private Button btn3;
private Button btn4;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_1);
btn1 = (Button) findViewById(R.id.btn1);
btn2 = (Button) findViewById(R.id.btn2);
btn3 = (Button) findViewById(R.id.btn3);
btn4 = (Button) findViewById(R.id.btn4);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
}

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
int version = Integer.valueOf(android.os.Build.VERSION.SDK);
switch(v.getId()) {
case R.id.btn1:
//放大缩小跳转
startActivity(new Intent(this, OtherActivity.class));
if(version > 5 ){
overridePendingTransition(R.anim.zoomin, R.anim.zoomout);
}
break;
case R.id.btn2:
//淡入淡出跳转
startActivity(new Intent(this, OtherActivity.class));
if(version > 5 ){
overridePendingTransition(R.anim.alphain, R.anim.alphaout);
}
break;
case R.id.btn3:
//左向右跳转
startActivity(new Intent(this, OtherActivity.class));
if(version > 5 ){
overridePendingTransition(R.anim.move_in_right, R.anim.move_out_right);
}
break;
case R.id.btn4:
//右向左跳转
startActivity(new Intent(this, OtherActivity.class));
if(version > 5 ){
overridePendingTransition(R.anim.move_in_left, R.anim.move_out_left);
}
break;
}
finish();
}
}

还有很多动画效果,就要靠我们发挥自己的想象力,自己去设计,呵呵~

更多相关文章

  1. 如何在自己的程序中添加appWidget(附简单代码)
  2. Android两行代码真正杀死你的App
  3. Android中的动画详解系列【2】——飞舞的蝴蝶
  4. 解决TextView设置跑马灯但却没有效果
  5. Android代码混淆之混淆规则
  6. Android Handler 异步消息处理机制 《第一行代码》
  7. [Android]文本框实现搜索和清空效果
  8. 三款Android炫酷Loading动画组件推荐
  9. 《Android学习大纪事之--属性动画ObjectAnimator》

随机推荐

  1. Android四大组件之Activity
  2. android 各版本发布时间
  3. Android日志工具
  4. Android(安卓)一些注意
  5. 避免在Android上冷启动
  6. 探索Android中的Parcel
  7. android 开发环境安装和测试中常出现的问
  8. Android读取JSON格式数据
  9. Android(安卓)Animation学习
  10. androidUI控件