从OverrideDemoActivity跳转到ActivityA。
OverrideDemoActivity:
package com.practice.override;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class OverrideDemoActivity extends Activity {
Button button;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button)findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(OverrideDemoActivity.this,ActivityA.class);
startActivity(intent);
/*
* 第一个参数是指启动的Activity的动画方式,第二个参数是finish的Activity的动画方式
* 这里启动的是ActivityA,所以就是ActivityB以R.anim.demo_scale这个动画方式启动
* 而OverrideDemoActivity这个则以R.anim.demo_rotate动画finish
*/
overridePendingTransition(R.anim.demo_scale, R.anim.demo_translate);
}
});
}
}
ActityA:
package com.practice.override;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class ActivityA extends Activity{
Button button;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button)findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
finish();
overridePendingTransition(R.anim.demo_scale, R.anim.demo_translate);
}
});
}
}
在res目录下面新建anim目录,然后新建demo_scale.xml:
<?xml version="1.0" encoding="utf-8"?>
<set android:shareInterpolator="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<scale
android:fromXScale="0"
android:toXScale="1.0"
android:fromYScale="0"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="3000"
/>
</set>
接着再建立一个xml文件demo_translate.xml:
<?xml version="1.0" encoding="utf-8"?>
<set android:shareInterpolator="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0"
android:toXDelta="150"
android:fromYDelta="0"
android:toYDelta="150"
android:duration="3000"
/>
</set>
分享到:
相关推荐
Activity启动动画是Android中用于改变Activity进入和退出时视觉效果的技术。通过自定义动画,开发者可以实现各种独特的过渡效果,使应用程序看起来更加生动和专业。实现Activity启动动画主要涉及以下几个步骤: 1. ...
要在Activity启动时播放动画,我们可以在onCreate()方法中使用`overridePendingTransition()`函数。例如,我们可以创建两个XML动画资源文件,一个用于进入动画(right_in.xml),另一个用于退出动画(right_out.xml...
在Activity的启动动画中,可能会用到`ObjectAnimator`或`ValueAnimator`来改变Activity窗口的透明度、大小或位置,实现更复杂的入场效果。例如,可以使用`ObjectAnimator.ofFloat()`方法来创建一个从屏幕外滑入的...
这个压缩包“安卓启动退出网络判断相关-Activity启动和退出动画.zip”包含了关于Activity启动动画、退出动画的实现以及可能的网络状态判断的示例代码。 首先,我们来看“Activity启动和退出动画”。在安卓中,...
开启activity时,将当前页面从一个位置切割并拉开的动画效果。
本资源"Android高级应用源码-Activity启动和退出动画.rar"提供了一套实现此类动画的示例代码,对于深入理解Android应用开发,尤其是动画效果的实现具有很大的学习价值。 1. **Activity的生命周期** Activity的生命...
这个方法允许我们在Activity启动或结束时指定自定义的动画资源。例如,当启动一个新的Activity时,我们可以在`startActivity()`之后立即调用`overridePendingTransition()`,传入两个动画资源ID:一个用于进入动画,...
Android去掉系统自带的Activity跳转动画 Android系统中,Activity跳转动画是默认启用的,这可以提供良好的用户体验。但是,有时候我们不希望在Activity跳转时有动画效果,例如在实现假的ActionBar时。幸运的是,...
在Activity的启动或关闭时调用此方法,传入两个动画资源ID: ```java @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_...
进入动画是指Activity启动时执行的动画,退出动画则是Activity关闭时的动画。共享元素动画允许我们在两个Activity之间平滑过渡一个或多个UI元素,增加连贯性。 2. **XML动画定义**:Android的动画效果主要通过XML...
2. 在启动新Activity时,使用`overridePendingTransition()`设置动画。 3. 在目标Activity返回时,再次调用`overridePendingTransition()`,并根据需要调整动画资源的顺序。 通过自定义Activity跳转动画,开发者...
这些动画可以通过`overridePendingTransition()`方法在Activity启动或退出时应用。 3. **共享元素过渡** 共享元素过渡(Shared Element Transition)是一种高级动画技术,允许两个Activity之间的一个或多个视图...
总的来说,"android程序启动画面源码"是一个学习如何在Android应用中实现启动画面切换效果的实践案例,涵盖了Activity的生命周期、布局设计、动画应用以及时间管理等多个Android开发的关键知识点。开发者可以通过...
BaseActivity将处理所有动画的创建和启动,子Activity只需继承BaseActivity即可自动应用这些动画。以下是一个简单的BaseActivity示例: ```java abstract class BaseActivity : AppCompatActivity() { override ...
开发者可以使用`overridePendingTransition()`方法在启动或结束一个Activity时指定自定义动画。例如,要设置进入和退出动画,可以在启动新Activity时这样写: ```java Intent intent = new Intent(this, ...
在Android系统中,Activity的跳转动画是用户体验的重要组成部分,特别是在Android Lollipop(5.0)版本中,引入了全新的Material Design设计语言,这为应用的界面交互带来了丰富的视觉效果和流畅的过渡动画。...
1. 使用`overridePendingTransition()`方法:此方法允许你在启动或结束一个Activity时指定一个进入动画和一个退出动画。例如: ```java override fun onCreate(savedInstanceState: Bundle?) { super.onCreate...
5. **优化用户体验**:在实际开发中,我们可能还需要考虑用户体验,比如添加过渡动画,或者根据网络状态决定是否立即跳转,甚至在启动时加载必要的数据,这些都可以在`MyApplication` Activity的`onCreate()`方法中...