iis服务器助手广告广告
返回顶部
首页 > 资讯 > 移动开发 >Android Activity跳转动画效果
  • 791
分享到

Android Activity跳转动画效果

activity动画Android 2022-06-06 04:06:33 791人浏览 泡泡鱼
摘要

Activity的跳转动画在5.0的时候做了一个重大的突破,下面来看一下吧 1.5.0之前的overridePendingTransition 相信大家对OverridePen

Activity的跳转动画在5.0的时候做了一个重大的突破,下面来看一下吧

1.5.0之前的overridePendingTransition

相信大家对OverridePendingTransition还是很熟悉的,使用方法也是很简单就是

//fade_in是第二个界面的进入动画,fade_out是第一个界面退出动画,不想动画传入0
 overridePendingTransition(R.anim.fade_in,R.anim.fade_out);

fade_in :


<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:Android="Http://schemas.android.com/apk/res/android" 
  android:duration="4000" 
  android:fromYDelta="100%" 
  android:toYDelta="0"/> 

fade_out:


<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
 android:toXDelta="0" 
 android:fromXDelta="-100%" 
 android:duration="4000" 
 />

对应动画效果

用的时候又一个缺点就是必须用在finish() 或者startActivity() 方法之后, 而此之外相对与5.0的动画,他的动画效果只在activity的界面有效果,对于其中的控件,是没有相应的效果的,

2.5.0的效果

    相对与之前的效果,5.0做了一个很大的改变,首先我们不用写xml文件了,系统直接封装好了,我们只要调用就好了,当然,由于动画没有对5.0之前做兼容,所以我们在5.0之前的手机还是要做下兼容,当然这是后话了。首先我们来看下5.0的效果
    准备工作: (针对1,2,3的操作)

        1.告诉window界面需要切换动画 有两种方式

             a. 直接在styles.xml(21)添加<item name="android:windowContentTransitions">true</item>

 

             b.在 setContentView()之前加上 


getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);

        2.在startActivity()界面跳转使用           


startActivity(intent,ActivityOptions.makeSceneTransitionAnimation(this).toBundle());

            到此接下来的所有操作在跳转进入的界面做操作就好了

   一.Explode 分解(有的人叫爆炸)动画  

             

        也是有2种方式实现

        1.代码            


//此activity进入 
getWindow().setEnterTransition(new Explode().setDuration(2000)); 
//此activity退出 
getWindow().setExitTransition(new Explode().setDuration(2000)); 
//再次进入时使用(如果当前Activity已经打开过,并且再次打开该Activity时的动画 ) 
//getWindow().setReenterTransition(new Explode().setDuration(2000)); 
//决定在两个Activity之间切换时,指定两个Activity中对应的View的过渡效果 
// getWindow().setSharedElementEnterTransition(new Explode().setDuration(2000)); 

          2.explode写入res/transition文件夹下的xml中


<explode xmlns:android="http://schemas.android.com/apk/res/android" 
 android:duration="2000" 
 />

                a.  然后通过                   


Transition explode = TransitionInflater.from(this).inflateTransition(R.transition.explode); 
getWindow().setEnterTransition(explode); 
getWindow().setExitTransition(explode); 

               b.也可以在主题中配置                    


<item name="android:windowExitTransition">@transition/explode</item> 
<item name="android:windowEnterAnimation">@transition/explode</item> 
<item name="android:windowReenterTransition">@transition/explode</item> 

      二  Fade  淡入淡出 

                        


getWindow().setEnterTransition(new Fade().setDuration(2000)); 
getWindow().setExitTransition(new Fade().setDuration(2000)); 

      三 Slide 滑动进入       

   


//左侧滑入 
getWindow().setEnterTransition(new Slide(Gravity.LEFT).setDuration(2000)); 
getWindow().setExitTransition(new Slide(Gravity.RIGHT).setDuration(2000)); 

             b .xml中的话


<?xml version="1.0" encoding="utf-8"?> 
<!--slideEdge表示起始滑动的侧边位置,end表示右侧,start表示左侧,top表示顶部,bottom表示底侧--> 
<slide xmlns:android="http://schemas.android.com/apk/res/android" 
  android:duration="2000" 
  android:slideEdge="end"> 
 <!--去掉顶部状态栏,底部操作栏的滑动--> 
 <targets> 
  <target android:excludeId="@android:id/navigationBarBackground" /> 
  <target android:excludeId="@android:id/statusBarBackground" /> 
 </targets> 
</slide> 

        5.0的共享元素动画

            1.系统自带的

            a.一个共享View

           首先用到的activity的跳转方法是(一个共享view的):             


startActivity(intent,ActivityOptions.makeSceneTransitionAnimation(this,button,"all_hava").toBundle()); 

            说下参数 button表示这个共享的view,后面的字符串 “all_hava”是两个共享view在xml中的  android:transitionName="all_hava"

                用到的就是这些,是不是很简单  

               b.多个 共享view

                    这里我们稍稍看下源码makeSceneTransitionAnimation(Activity activity, Pair<View, String>... sharedElements),知道可以利用Pair来传参数  ,格式如下,不多说了      


 startActivity(intent,ActivityOptions.makeSceneTransitionAnimation(this,
            create(((View) button),"all_hava"), 
            create(((View) textView),"all_hava"))
            .toBundle())

            系统自带的差不多已经够用了,如果我们要玩点自定义的呢           

剩下的在来说下兼容问题,因为只有5.0以上才有上面的这些个动画,所以,我们肯定是要做兼容的 首先肯定是要加判断的


 if(Build.VERSION.SDK_INT>=
 Build.VERSION_CODES.LOLLIPOP){
 startActivity(intent,ActivityOptions.makeSceneTransitionAnimation(this,button,"all_hava").toBundle());
}else{
 a. //低版本兼容,不过没动画效果 http://www.cnblogs.com/tianzhijiexian/p/4087917.html 可以看下这个介绍
 ActivityOptionsCompat optionsCompat = ActivityOptionsCompat.makeScaleUpAnimation(
   button,
   0,
   0,
   0,
   0);
 ActivityCompat.startActivity(this,intent,optionsCompat.toBundle());
 b. //或者是直接用overridePendingTransition();
}

以上所述是小编给大家介绍的Android Activity跳转动画效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程网网站的支持!

您可能感兴趣的文章:详解Android(共享元素)转场动画开发实践android的activity跳转到另一个activityAndroid 实现两个Activity跳转实例Android开发之5.0activity跳转时共享元素的使用方法


--结束END--

本文标题: Android Activity跳转动画效果

本文链接: https://www.lsjlt.com/news/22159.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android Flutter实现自由落体弹跳动画效果
    目录粒子运动概念如何保持持续运动 创建粒子对象创建粒子控制器初始化粒子创建画板多粒子实现八大行星加速度自由落体弹跳总结粒子运动概念 粒子运动是将对象按照一定物理公式进行的自...
    99+
    2022-11-13
    Android Flutter自由落体弹跳动画 Flutte 弹跳动画 Flutter 动画
  • android的activity怎么跳转到另一个activity
    在Android中,要从一个Activity跳转到另一个Activity,可以使用Intent和startActivity方法。下面...
    99+
    2023-08-17
    android activity
  • Android SeekBar 自定义thumb旋转动画效果
    目录简介示例dimens.xmldrawableshape_thumb_round_1.xmllayers_thumb_ring_sweep_1.xmlrotate_thumb_1....
    99+
    2024-04-02
  • 微信小程序实现页面跳转动画效果
    微信小程序实现页面跳转动画效果在微信小程序中,页面跳转是一项非常常见的功能。为了提升用户体验,我们可以通过添加动画效果来让页面切换更加流畅和生动。下面我将介绍如何使用微信小程序的API来实现页面跳转动画效果,并附上具体的代码示例。首先,我们...
    99+
    2023-11-21
    动画效果 微信小程序 页面跳转
  • Android如何实现翻转动画效果(卡片翻转)
    目录前言需求一、先介绍三个插值器二、实现步骤1.效果图2.布局3.逻辑判断(是否隐藏)4.翻转动画5.bug出现6.bug解决三、源码四、总结前言 最近好友问计蒙翻转动画,恰好在大...
    99+
    2024-04-02
  • android的activity跳转到另一个activity_Android
    在 Android 中,要实现一个 Activity 跳转到另一个 Activity,可以使用 Intent 对象来实现。下面是一个...
    99+
    2023-08-16
    Android
  • CSS3怎么实现跳动圈动画效果
    这篇“CSS3怎么实现跳动圈动画效果”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“CSS3怎么实现跳动圈动画效果”文章吧。效...
    99+
    2023-07-04
  • Android activity实现延时跳转功能
    什么是Activity Activity是一个Android的应用组件,它提供屏幕进行交互。每个Activity都会获得一个用于绘制其用户界面的窗口,窗口可以充满哦屏幕也可以小于屏幕...
    99+
    2024-04-02
  • Android SeekBar如何自定义thumb旋转动画效果
    这篇文章给大家分享的是有关Android SeekBar如何自定义thumb旋转动画效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。示例dimens.xml为方便管理,可以添加一些尺寸设置<dimen&n...
    99+
    2023-06-25
  • 如何在Android中关闭Activity的滑动效果
    这篇文章将为大家详细讲解有关如何在Android中关闭Activity的滑动效果,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.第一个Activity:package com.ekegua...
    99+
    2023-05-31
    android activity roi
  • 用JavaScript实现动画效果(转)
    大家在使用Dreamweaver中的时间线功能或以做出很有趣的动画效果,Dreamweaver会自动为用户生成特定的程序代码,大家有没有想过动画的实现原理呢?其实原理是很简单的,主要是使用了一个计时器函数,下面我为大家  演示一个简单的动画...
    99+
    2023-06-03
  • 用JavaScript实现动画效果 (转)
    用JavaScript实现动画效果 (转)[@more@]主页: .NET">http://www.maxss.netEMail: maxss.net@163.com  大家在使用Dreamweaver中的时间线功能或以做出很有趣的动画效果...
    99+
    2023-06-03
  • Android Activity进出动画三种方法
     Android Activity进出动画三种方法 实现activity的进出场动画总共有3种方式,下面会一一列出,首先给出示例的动画xml文件。动画的xml文件<?xml version="1.0" en...
    99+
    2023-05-31
    android activity 动画
  • css怎么实现弹跳球动画效果
    小编给大家分享一下css怎么实现弹跳球动画效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   1、定义动画关键帧   对...
    99+
    2024-04-02
  • Android activity动画不生效原因及解决方案总结
    activity动画方式 在AndroidMenifest中添加activity的动画属性windowAnimationStyle <item name="android...
    99+
    2024-04-02
  • JavaScript+Canvas实现带跳动效果的粒子动画
    目录前言实现过程运行效果总结前言 用 HTML5 的 Canvas 元素实现一个带有跳动效果的粒子动画。会用到 Canvas 的2D渲染上下文,通过 JavaScript 编写绘图代...
    99+
    2023-03-14
    JavaScript Canvas实现粒子动画 Canvas粒子动画 JavaScript Canvas
  • Android应用中的Activity跳转怎么利用滑动来实现
    这篇文章给大家介绍Android应用中的Activity跳转怎么利用滑动来实现,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。通过手势识别器实现界面的转跳,具体内容如下创建 GestureDetector对象 2、创建新...
    99+
    2023-05-31
    android activity roi
  • Android Flutter如何实现3D动画效果
    这篇文章主要讲解了“Android Flutter如何实现3D动画效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Android Flutter如何实现3D动画效果”吧...
    99+
    2023-06-29
  • Android实现颜色渐变动画效果
    目录前言一、Android中插值器TypeEvaluator二、案例效果实现1.利用Android自带的颜色插值器ArgbEvaluator2.看看Android自带颜色插值器Arg...
    99+
    2024-04-02
  • android怎么实现加载动画效果
    Android中实现加载动画效果可以通过以下几种方式:1. 使用ProgressBar:ProgressBar是Android系统提...
    99+
    2023-08-08
    android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作