【Android开发】Activity切换动画
原创
©著作权归作者所有:来自51CTO博客作者光仔December的原创作品,请联系作者获取转载授权,否则将追究法律责任
好久没写博文了,自从ACM退役以后,一直在专注开发应用程序。如果不是今天有博友加我QQ,我都忘记我的博客了,看看以前自己的劳动成果,努力的那些日子历历在目,我决定每周定时更新博文!作为自己前进的动力。
今天学了Activity切换动画与页面切换动画,总结了一下学习笔记:
Activity切换动画:
两个Activity的界面配置文件
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="打开新Activity"
android:onClick="openActivity"/>
</LinearLayout>
other.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:text="这是新Activity" />
</LinearLayout>
MainActivity.java:
package com.example.activitymove;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void openActivity(View v){
Intent intent=new Intent(this,OtherActivity.class);
startActivity(intent);
//实现Activity页面切换动画
//参数(进来的动画,退出的动画)
this.overridePendingTransition(R.anim.enteralpha, R.anim.outalpha);
}
}
OtherActivity.java:
package com.example.activitymove;
import android.app.Activity;
import android.os.Bundle;
public class OtherActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.other);
}
}
在res/anim/文件夹下有enteralpha.xml和outalpha.xml两个动画配置文件:
enteralpha.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<alpha
android:fromAlpha="0"
android:toAlpha="1.0"
android:duration="5000"
/>
</set>
outalpha.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<alpha
android:fromAlpha="1.0"
android:toAlpha="0"
android:duration="5000"
/>
</set>
效果:点击MainActivity的按钮,画面慢慢消失,OtherActivity逐渐显现出来
(将配置文件换成其他的动画效果也可以,本例子使用的是淡入淡出的动画效果)