Android的Activity屏幕切换动画(二)-左右滑动深入与实战

  translate 位置转移动画效果  
            整型值:  
                fromXDelta 属性为动画起始时 X坐标上的位置  
                toXDelta   属性为动画结束时 X坐标上的位置  
                fromYDelta 属性为动画起始时 Y坐标上的位置  
                toYDelta   属性为动画结束时 Y坐标上的位置  
                注意:  
                         没有指定,  
                         默认是以自己为相对参照物  
            长整型值:  
                duration  属性为动画持续时间  

                说明:   时间以毫秒为单位  

在这些属性里面还可以加上%和p,例如:

android:toXDelta="100%",表示自身的100%,也就是从View自己的位置开始。

android:toXDelta="80%p",表示父层View的80%,是以它父层View为参照的。



1. [代码]new_dync_out_to_left.xml(带动态效果移动)     

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<? xml version = "1.0" encoding = "utf-8" ?>
<!--从屏幕左边退出,先退后2%p位置,再向左退出  -->
< set xmlns:android = "http://schemas.android.com/apk/res/android"
     android:shareInterpolator = "false" >
 
     < translate
         android:duration = "200"
         android:fromXDelta = "0%p"
         android:interpolator = "@android:anim/accelerate_decelerate_interpolator"
         android:toXDelta = "2%p" />
     < translate
         android:duration = "1000"
         android:fromXDelta = "2%p"
         android:interpolator = "@android:anim/accelerate_interpolator"
         android:startOffset = "200"
         android:toXDelta = "-100%p" />
 
</ set >

2. [代码]new_dync_in_from_right.xml     

?
1
2
3
4
5
6
7
8
<? xml version = "1.0" encoding = "utf-8" ?>
<!--从屏幕右边偏离2%位置开始进入,到达终点后有超出在返回终点的动态效果  -->
< translate xmlns:android = "http://schemas.android.com/apk/res/android"
     android:duration = "1000"
     android:fromXDelta = "102%p"
     android:interpolator = "@android:anim/anticipate_overshoot_interpolator"
     android:startOffset = "200"
     android:toXDelta = "0%p" />

3. [代码]调用代码     

?
1
2
3
4
5
Intent intent = new Intent();
                 intent.setClass(ActivitySwitchDemoActivity. this , SecondActivity. class );
                 startActivity(intent);
                 //设置切换动画,从右边进入,左边退出,带动态效果
                 overridePendingTransition(R.anim.new_dync_in_from_right, R.anim.new_dync_out_to_left);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值