天天看点

[Android1.5]Android2.0版本以下Activity切换动画效果

前言

  在android 2.0版本以上做activity切换时的动画效果是很容易的,可以调用overridependingtransition函数,一行代码搞定,当然配置动画效果的xml文件是少不了的,但是在2.0版本以下是没有这个函数的,如何方便的做动画效果呢?有说用viewflipper或者getwindow().setwindowanimations,但是这里都没有成功,用了一个取巧的办法,但是效果还不错:)

声明

  欢迎转载,但请保留文章原始出处:) 

    博客园:http://www.cnblogs.com

    农民伯伯: http://www.cnblogs.com/over140/

正文

  一、流程说明

    点击activity1中按钮btnlogin切换到activity2,切换要求有缩放的动画效果。

  二、实现原理

    在activity2加载时启用顶层容器的动画效果,注意顶层容器最好是整屏。

  三、实现代码

    activity1.java

[Android1.5]Android2.0版本以下Activity切换动画效果

    /**

     * 登录

     */

    @override

    public void onclick(view view) {

        startactivity(getintent().setclass(this, activity2.class));

    }

[Android1.5]Android2.0版本以下Activity切换动画效果

    activity2.java

[Android1.5]Android2.0版本以下Activity切换动画效果

    public void oncreate(bundle savedinstancestate) {

        super.oncreate(savedinstancestate);

        setcontentview(r.layout.test2);

        animation anim = animationutils.loadanimation(this,r.anim.my_scale_action);

        findviewbyid(r.id.body).startanimation(anim);

[Android1.5]Android2.0版本以下Activity切换动画效果

    test2.xml

[Android1.5]Android2.0版本以下Activity切换动画效果

<linearlayout android:id="@+id/body"

    xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent" android:layout_height="fill_parent"

    android:orientation="vertical" >

        <textview android:layout_x="179dp" android:layout_y="78dp"

            android:id="@+id/test"

            android:layout_width="wrap_content" android:layout_height="wrap_content"

            android:textcolor="#c5dde7" android:textstyle="bold">

        </textview>

</linearlayout>

[Android1.5]Android2.0版本以下Activity切换动画效果

    my_scale_action.xml 动画效果的配置文件

[Android1.5]Android2.0版本以下Activity切换动画效果

<set xmlns:android="http://schemas.android.com/apk/res/android">

    <scale android:interpolator="@android:anim/accelerate_decelerate_interpolator"

        android:fromxscale="0.0" 

        android:toxscale="1.0" 

        android:fromyscale="0.0"

        android:toyscale="1.0" 

        android:pivotx="50%" 

        android:pivoty="50%"

        android:fillafter="true" 

        android:duration="300" />

</set>

[Android1.5]Android2.0版本以下Activity切换动画效果

      代码说明:

        a)  注意代码activity2.java加粗标红的两行代码,是本文的核心。

        b)  r.id.body为顶层容器的id

        c)  关于缩放的xml文件大家可以搜索一下,有相关的中文资料,搜索关键字:"android 动画效果"。

结束

   由图片的动画效果联想到view的动画效果再联想到用顶层view做动画效果,效果还不错,仍然在低版本奋斗的朋友有福了:)

转载:http://www.cnblogs.com/over140/archive/2010/11/02/1867003.html

继续阅读