`
shappy1978
  • 浏览: 703359 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

【转】Android 关于 Activity 之间的切换动画

阅读更多

最近刚好有人问题,android中 Activity 之间的切换动画怎么实现?
属性ApiDemo的朋友应该都知道,其实在android2.0中就已经可以很简单的实现Activity 之间的动画切换效果。
在startActivity 后调用 overridePendingTransition(int enterAnim,int exitAnim),就可以实现Activity之间的动画,
其中enterAnim 是下一个Activity的enter动画效果,exitAnim 是当前Actitvity退出的动画效果,
在anim的file中可以定义动画,就跟定义控件的动画一样,这里就不多种解释了,相信大家多控件的动画都比较熟悉了。

好现在开始贴下部分代码,以下是25个简单的Activity之间的切换效果。

package com.asai.android.demo;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;

public class demoMain extends Activity {
        Button btnDemo;
        Spinner sprAnim;

        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.main);
                btnDemo = (Button) findViewById(R.id.btnDemo);
                sprAnim = (Spinner) findViewById(R.id.sprAnim);
                ArrayAdapter<?> animType = ArrayAdapter.createFromResource(this,
                                R.array.anim_type, android.R.layout.simple_spinner_item);
                animType
                                .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                sprAnim.setAdapter(animType);
                sprAnim.setSelection(0);
                btnDemo.setOnClickListener(new View.OnClickListener() {
                        public void onClick(View view) {
                                startActivity(new Intent(demoMain.this, demoDetail.class));
                                switch (sprAnim.getSelectedItemPosition()) {
                                case 0:
                                        overridePendingTransition(R.anim.zoom_enter,
                                                        R.anim.zoom_exit);
                                        break;
                                case 1:
                                        overridePendingTransition(R.anim.fade, R.anim.hold);
                                        break;
                                case 2:
                                        overridePendingTransition(R.anim.alpha_rotate,R.anim.my_alpha_action);
                                        break;
                                case 3:
                                        overridePendingTransition(R.anim.alpha_scale_rotate,R.anim.my_alpha_action);
                                        break;
                                case 4:
                                        overridePendingTransition(R.anim.alpha_scale_translate_rotate,R.anim.my_alpha_action);
                                        break;
                                case 5:
                                        overridePendingTransition(R.anim.alpha_scale_translate,R.anim.my_alpha_action);
                                        break;
                                case 6:
                                        overridePendingTransition(R.anim.alpha_scale,R.anim.my_alpha_action);
                                        break;
                                case 7:
                                        overridePendingTransition(R.anim.alpha_translate_rotate,R.anim.my_alpha_action);
                                        break;
                                case 8:
                                        overridePendingTransition(R.anim.alpha_translate,R.anim.my_alpha_action);
                                        break;
                                case 9:
                                        overridePendingTransition(R.anim.my_rotate_action,R.anim.my_alpha_action);
                                        break;
                                case 10:
                                        overridePendingTransition(R.anim.my_scale_action,R.anim.my_alpha_action);
                                        break;
                                case 11:
                                        overridePendingTransition(R.anim.my_translate_action,R.anim.my_alpha_action);
                                        break;
                                case 12:
                                        overridePendingTransition(R.anim.myanimation_simple,R.anim.my_alpha_action);
                                        break;
                                case 13:
                                        overridePendingTransition(R.anim.myown_design,R.anim.my_alpha_action);
                                        break;
                                case 14:
                                        overridePendingTransition(R.anim.scale_rotate,R.anim.my_alpha_action);
                                        break;
                                case 15:
                                        overridePendingTransition(R.anim.scale_translate_rotate,R.anim.my_alpha_action);
                                        break;
                                case 16:
                                        overridePendingTransition(R.anim.scale_translate,R.anim.my_alpha_action);
                                        break;
                                case 17:
                                        overridePendingTransition(R.anim.translate_rotate,R.anim.my_alpha_action);
                                        break;
                                case 18:
                                        overridePendingTransition(R.anim.hyperspace_in,R.anim.hyperspace_out);
                                        break;
                                case 19:
                                        overridePendingTransition(R.anim.shake,R.anim.my_alpha_action);
                                        break;
                                case 20:
                                        overridePendingTransition(R.anim.push_left_in,R.anim.push_left_out);
                                        break;
                                case 21:
                                        overridePendingTransition(R.anim.push_up_in,R.anim.push_up_out);
                                        break;
                                case 22:
                                        overridePendingTransition(R.anim.slide_left,R.anim.slide_right);
                                        break;
                                case 23:
                                        overridePendingTransition(R.anim.slide_top_to_bottom,R.anim.my_alpha_action);
                                        break;
                                case 24:
                                        overridePendingTransition(R.anim.wave_scale,R.anim.my_alpha_action);
                                        break;
                        }
                        }
                });
        }
}
 
分享到:
评论

相关推荐

    Android中Activity切换动画

    以下是对Android中Activity切换动画的详细说明: 1. **标准动画** Android系统默认提供了几种基本的切换动画,如淡入淡出、滑动等。这些动画可以通过在Manifest.xml文件中的`&lt;activity&gt;`标签内设置`android:...

    Activity切换动画

    总结来说,Activity切换动画是Android开发中的一个重要方面,它能够增强应用的视觉表现力和用户体验。通过理解和熟练运用Android提供的动画机制,开发者可以创建出各种个性化的动画效果,同时解决特定场景下的动画...

    android Activity间切换动画效果演示源码

    本资源提供的"android Activity间切换动画效果演示源码"涵盖了模糊、水波纹以及折叠等多种动态效果,旨在帮助开发者了解并实现各种复杂的Activity切换动画。 1. **Activity切换动画基础** Android中的Activity切换...

    Android 关于 Activity 之间的切换动画

    本篇文章将深入探讨如何在Android中实现Activity之间的切换动画,以及涉及到的相关源码和技术工具。 首先,Activity的切换动画主要通过Android的Transition API来实现。Transition API允许开发者自定义进入、退出、...

    android Activity切换动画多种方式

    总结,Android中的Activity切换动画是提高应用用户体验的重要手段。通过自定义动画、使用系统内置动画或创建基类来统一管理,开发者可以为应用添加各种独特的视觉效果。在实践中,应根据项目需求和用户喜好灵活选择...

    android activity切换动画效果

    总结来说,Android提供了多种方式来实现Activity切换动画,开发者可以根据项目需求选择适合的方法,利用Android的动画机制为用户带来更出色的视觉体验。通过熟练掌握这些动画技术,不仅可以提升应用的美观度,还能...

    activity切换动画效果大全

    android activity切换动画效果大全,包括六个经典例子: 1、25个activity切换的动画效果; 2、android activity 切换效果库(劲推荐); 3、Android_Activity之间切换动画; 4、Android改变Activity切换效果; 5、...

    Android Activity四种切换动画

    本篇将详细介绍Android中的四种常见Activity切换动画,包括从下到上、翻页、大小从1到0以及Alpha(透明度)从1到0的变化。 首先,我们来看从下到上的切换动画。这种动画常用于模仿抽屉效果,给人一种新界面从下方拉...

    android 两个activity 翻转动画切换

    在Android开发中,Activity之间的切换可以通过自定义动画来实现更加丰富的视觉效果,比如翻转动画。这不仅可以提高用户的交互体验,还能为应用增添独特的风格。本文将深入探讨如何实现两个Activity之间的翻转动画...

    android里activity切换动画集合

    本篇将深入探讨Android中Activity切换动画的实现与应用。 首先,Android提供两种类型的动画:视图动画(View Animation)和属性动画(Property Animation)。视图动画主要用于改变对象的视觉外观,但不实际改变对象...

    Android activity切换的动画效果

    在Android应用开发中,...总的来说,理解和掌握Activity切换动画是提升Android应用体验的关键之一。通过合理利用Android提供的工具和API,开发者可以创造出各种独特且流畅的过渡效果,让应用在众多应用中脱颖而出。

    2个Activity之间的切换动画效果

    在Android应用开发中,用户体验是至关重要的一个环节,而Activity之间的切换动画则能极大地提升应用的交互性和趣味性。本文将深入探讨如何实现"2个Activity之间的切换动画效果",主要涉及帧动画(Framed Animation)和...

    Android的Activity切换动画特效库SwitchLayout,视图切换动画库,媲美IOS

    `SwitchLayout`就是这样一个专门用于实现Activity切换时动画特效的库,它的目标是为Android应用带来与iOS类似的平滑和优雅的视图切换效果。本文将深入探讨`SwitchLayout`的原理、使用方法以及如何将其集成到你的...

    android activity 动画切换

    在Android应用开发中,Activity是用户界面的基本单元,用于展示应用程序的不同屏幕或“视图”。...通过深入研究和理解这个示例,你将能够熟练地在你的Android应用中实现各种活动切换动画,提升用户体验。

    两个Activity之间中轴旋转切换

    总的来说,实现两个Activity之间的中轴旋转切换需要理解Intent的使用、Activity的启动模式以及Android的动画机制。通过合理地组合这些元素,开发者可以创造出各种各样的动画效果,提升应用的视觉吸引力。在实际开发...

    android动画activity切换特效

    通过`overridePendingTransition()`方法,可以指定Activity切换时应用的动画资源ID。 2. Fade动画: Fade动画用于对象的淡入淡出,常用于背景颜色或者图片的渐变。 3. Explode动画: Explode动画是一种全屏的...

    Activity之间切换动画

    自API级别21(Android Lollipop)开始,系统内置了多种预设的Activity切换动画,这些动画可以通过设置Intent的Flags或在主题中进行全局配置。 1. **动画类型**: - **滑动动画**:这是最常见的动画类型,包括左右...

    android中activity切换动画

    本文将深入探讨如何在Android中实现Activity切换动画,包括从左边、右边、上边和下边进入的动画效果。 首先,Android提供了两种类型的动画:视图动画(View Animation)和属性动画(Property Animation)。视图动画...

    activity切换动画全集

    本文将深入探讨如何在Android中实现Activity切换动画,以及如何使用`overridePendingTransition()`方法来定制这些动画。 一、Activity切换动画类型 1. 标准动画:Android系统默认提供了几种简单的动画,如淡入淡出...

    Android Activity切换动画效果

    本教程将深入探讨如何在Android中实现Activity切换动画效果。 首先,我们需要了解Activity切换动画的两种基本类型:进入(Enter)动画和退出(Exit)动画。进入动画是指当新的Activity显示时发生的动画,而退出动画...

Global site tag (gtag.js) - Google Analytics