正文
一、流程说明
点击Activity1中按钮btnLogin切换到Activity2,切换要求有缩放的动画效果。
二、实现原理
在Activity2加载时启用顶层容器的动画效果,注意顶层容器最好是整屏。
三、实现代码
Activity1.java
/**
* 登录
*/
@Override
public
void
onClick(View view) {
startActivity(getIntent().setClass(
this
, Activity2.
class
));
}
Activity2.java
@Override
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);
}
test2.xml
<
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
>
my_scale_action.xml 动画效果的配置文件
<
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
>
代码说明:
a) 注意代码Activity2.java加粗标红的两行代码,是本文的核心。
b) R.id.body为顶层容器的id
c) 关于缩放的xml文件大家可以搜索一下,有相关的中文资料,搜索关键字:"android 动画效果"。
本文转自over140 51CTO博客,原文链接:http://blog.51cto.com/over140/582202,如需转载请自行联系原作者