Activity之间的动画的切换

来源:互联网 发布:百度地图网络异常 编辑:程序博客网 时间:2024/05/29 11:05
    今天因为做的效果需要一个切换,然后自己查了下资料,了解一下Activity切换的实现,从Android2.0开始在Activity增加了一个方法:
public void overridePendingTransition (int enterAnim, int exitAnim)
其中:
enterAnim 定义Activity进入屏幕时的动画
exitAnim 定义Activity退出屏幕时的动画
注 : overridePendingTransition 方法必须在startActivity()或者 finish()方法的后面。
实现过程如下,首先定义2个动画,在 res目录创建anim目录, 然后在目录创建动画的xml文件:out_to_left.xml (从左边退出动画) 、in_from_right.xml(从右边进入动画)实现过程如下,首先定义2个动画,在 res目录创建anim目录, 然后在目录创建动画的xml文件:out_to_left.xml (就是activity在显示屏中往左退出) 、in_from_right.xml(就是将要显示的activity从右边进入显示屏中)
out_to_left.xml (从左边退出动画)
<?xml version="1.0" encoding="utf-8?><set xmlns:android="http://schemas.android.com/apk/res/android" >    <translate         android:fromXDelta="0%p"        android:toXDelta="-100%p"        android:duration="500" /></set>
in_from_right.xml (从右边进入动画)
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android" >    <translate         android:fromXDelta="100%p"         android:toXDelta="0%p"        android:duration="500" /></set>

java代码如下
public class LeftRightSlideActivity extends Activity {    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                    Button button = (Button)findViewById(R.id.button1);        button.setOnClickListener(new View.OnClickListener() {              @Override            public void onClick(View v) {                Intent intent = new Intent();                intent.setClass(LeftRightSlideActivity.this, SlideSecondActivity.class);                startActivity(intent);                //设置切换动画,从右边进入,左边退出                overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left);                            }        });    }}

以上就是简单的左右滑动的实现了

0 0