本文主要是介绍 Android 5.0 之后的 Activity 过渡动画 Transition。如果是整个页面的动画,实际大部分都可以用 overridePendingTransition 实现了。这里主要还是介绍当第二个界面的出现方式与第一个界面有一定的关联性的时候,特别是有共享同一元素的时候,需要的连贯的过渡动画。
先看效果图:
具体实现:
1,首先当我们用到 Transition时,需要 Activity OnCreate之前设置:
getWindow().requestFeature(Window.FEATURE_ACTIVITY_TRANSITIONS);
public class ListActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
getWindow().requestFeature(Window.FEATURE_ACTIVITY_TRANSITIONS);
super.onCreate(savedInstanceState);
// ....省略代码
}
}
2,启动第二个页面 PageActivity 的时候,带上 OptionsBundle:
public class ListActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
getWindow().requestFeature(Window.FEATURE_ACTIVITY_TRANSITIONS);
super.onCreate(savedInstanceState);
// ...省略代码
mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, in