共享元素就是为了activity之间切换的自然。平滑
饿了么首页点击搜索平滑过渡到另一个activity中就是用的这种、
1、<Button android:id="@+id/bnt001" android:layout_width="match_parent" android:layout_height="wrap_content" android:transitionName="shareNames" android:background="@color/colorPrimary" android:layout_marginTop="50dp" android:text="共享组件"/>在跳转的原activty中
android:transitionName="shareNames"
加入这个属性,名字可以随便取。
2、在目的activty中加入,需要共享的元素中加入android:transitionName="shareNames"这个属性。名字得和上面的那个一样,就是根据这个来配对的
<EditText android:layout_width="0dp" android:layout_weight="4" android:layout_height="match_parent" android:transitionName="shareNames" android:gravity="center_vertical" android:background="#fff" android:hint="共享组件" />3、启动activity
Bundle shareNames = ActivityOptionsCompat.makeSceneTransitionAnimation(MainActivity.this, btn001, "shareNames").toBundle(); Intent intent=new Intent(MainActivity.this,Activity_gongxiang.class); ActivityCompat.startActivity(MainActivity.this,intent,shareNames);这里ActivityOptionsCompat、ActivityCompat都收兼容包,因为MD是5.0以后才有的。所以用兼容包
不用的话,直接就可以startactivity,ActivityOptions