Android动画实践结论

实践出真知:

一>平移动画

overridePendingTransition(R.anim.enterAnim,R.anim.exitAnim);

方法中第一个参数表示进enterAnim,第二个参数表示出exitAnim;怎么理解呢?

比如:如果我写出这样的一个效果,如同在网易新闻上的一样。当你点击一条新闻的时候,好像当前页面不动,然后所请求的新闻页面从右向左逐渐平移过来并完全遮掩(覆盖)当前页面。如果实现它,看XML代码:

/**  enterAnim  */
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator" >
    <translate
        android:duration="500"
        android:fromXDelta="100%"
        android:toXDelta="0%" 
        android:interpolator="@android:anim/accelerate_interpolator"/>

</set>
/** exitAnim  */
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator" >
    <translate
        android:duration="500"
        android:fromXDelta="0%"
        android:interpolator="@android:anim/decelerate_interpolator"
        android:toXDelta="0%" />

</set>

然后,当你要跳转到另一页面时候在startActivity(Intent intent);之后放置上面的方法。
运行一下效果你就会知道,所谓的“进”就等同于,当前不想要看到的页面。咱要让它消失;相反,则”出“就是让你想要看到的新页面呈现出来并遮住(覆盖)当前页;

当点击返回时候,应用效果和上面的点击效果相反;效果:当前页向右平移撤去,原先当前页下面的页面原封的呈现出来。

当然还是使用上面的方法,此时XML代码如下;

/** enterAnim  */
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator" >       
         <translate
        android:duration="500"
        android:fromXDelta="0%"
        android:interpolator="@android:anim/accelerate_interpolator"
        android:toXDelta="0%" /> 

</set>
/** exitAnim  */
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator" >
        
        <translate
        android:duration="500"
        android:fromXDelta="0%"
        android:interpolator="@android:anim/decelerate_interpolator"
        android:toXDelta="100%" />

</set>

依然使用方法:

overridePendingTransition(R.anim.enterAnim,R.anim.exitAnim);


思路与请求效果思路相反;

其实,平移就是相当于一条河流;首先要知道该河流要想那个方向走。

比如向左:设置定方法的第一个参数(令当前页面向左平移)是从右向左移动,紧跟着请求页面(第二个参数)也是同方向从右向左平移。这样才能实现平移的流动性;

 

待续。。。。





 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值