發表文章

目前顯示的是 7月, 2020的文章

Android shared element transition

圖片
Shared Element 什麼是共享元素?從單一意義上講,共享元素是在兩個不同 Activity 或 Fragment 中存在的一對 View。這些 View 顯示相同的信息,例如文字或圖像,但它們在螢幕上的大小或位置可能不同。為了在切換畫面期間有保留視圖的錯覺,可以使用過渡來移動和重塑第一個 View,使其“成為”第二個 View。由於共享元素實際上包含兩個不同的視圖,實際上來講,並不是真正的共享它們。 現在,可以使用共享元素轉換來實現;但是這裡有個限制。此過渡效果僅在運行在Lollipop(Android 5.0 – API級別21)及更高版本上的設備上可用。 Android 5.0中引入了共享元素過渡,讓跨螢幕的 View 過渡更加無縫且易於實現。使用此過渡,“Activity”或“Fragment”之間的切換似乎更加自然且不受約束。 現在,讓我們來看看如何實現共享元素過渡 Step 1:Enable Window Content Transitions in styles.xml <!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- enable window content transitions --> <item name="android:windowContentTransitions">true</item> </style> Step 2: Set a Common Transition Name for Respective Views on Both Screens 在兩個佈局中的共享元素設定一個共同的 transitionName,View不必具有相同的 id,只需要transitionName 相同 在activity_home.xml中: <LinearLayout ...> <ImageView android:id="@+id/iv_list_object_image