Android动画共享元素(例列表图片放大到详情图片动画)

一、什么是共享元素

简单来说共享元素就是两个Activity中都拥有此元素,在第二个Activity中进行强调而展示一些的动画效果。例如圆按钮的漂移动画。图片的放大动画。

二、为什么使用共享元素

主要是因为在Android5.0以后google推出了 Material Design的设计风格,在Adnroid 5.0之后的api中也添加了很多关于这个风格的主题以及控件,也更推崇两个控件之间的自然的转场动画。使页面更加自然,炫丽。

三、效果展示

简书似乎好像不支持gif请打开查看效果:
http://note.youdao.com/noteshare?id=dcb19ac9c6b32e297c1441fa1bab821f

四、使用方法

1.在第一个Activity中的控件添加如下属性:
android:transitionName=”button”

<ImageView    
 android:id="@+id/s2"   
 android:layout_width="match_parent"    
 android:layout_height="150dp"     
 android:background="#00ff00"    
 android:transitionName="image" />

2.在第二个Activity中同样添加这个属性:
注意:这个名字必须一致。

3.使用intnet跳转即可

startActivity(intent,
 ActivityOptions.makeSceneTransitionAnimation(
    MainActivity.this,
      v,
      "image").toBundle());

这里的image参数就是在android:transitionName配置的。这样我们便实现此功能。其实很简单。

这个属性应该还支持其他的一些控件,比如按钮button等,具体的效果应该也还有其他的效果,可以自行查阅官方api。

    原文作者:开飞机的老舒克
    原文地址: https://www.jianshu.com/p/93d7017af1b1
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞