Android:去掉系統自帶的Activity跳轉動畫,跳轉無動畫,返回無動畫
阿新 • • 發佈:2019-02-06
首先,我需要在Activity跳轉沒有動畫,返回的時候也沒有動畫,排除fragment。在網上參考了其他的部落格,都只是實現了跳轉無動畫,並沒有實現返回無動畫。
<item name="android:windowAnimationStyle">@style/noAnimation</item>
<item name="android:windowNoTitle">true</item>
</style>
<style name="Theme" parent="android:Theme"> <pre name="code" class="java"><style name="noAnimation"> <item name="android:activityOpenEnterAnimation">@null</item> <item name="android:activityOpenExitAnimation">@null</item> <item name="android:activityCloseEnterAnimation">@null</item> <item name="android:activityCloseExitAnimation">@null</item> <item name="android:taskOpenEnterAnimation">@null</item> <item name="android:taskOpenExitAnimation">@null</item> <item name="android:taskCloseEnterAnimation">@null</item> <item name="android:taskCloseExitAnimation">@null</item> <item name="android:taskToFrontEnterAnimation">@null</item> <item name="android:taskToFrontExitAnimation">@null</item> <item name="android:taskToBackEnterAnimation">@null</item> <item name="android:taskToBackExitAnimation">@null</item> </style>
<activity android:name=".HomeActivity"
android:label="@string/app_name"
android:theme="@style/Theme">
經測試出現無動畫,但返回還是有動畫。
後通過查閱,可以通過overridePendingTransition(0,0);去控制。
程式碼如下:
在準備跳轉後新增。
在返回的當前Activity介面onPause方法中新增就可以了。Intent intent = new Intent(getActivity(),SearchListActivity.class); startActivity(intent); getActivity().overridePendingTransition(0, 0);
@Override
protected void onPause() {
overridePendingTransition(0,0);
super.onPause();
}
就可以實現跳轉過去無動畫,返回無動畫了。
參考以下部落格:
http://blog.csdn.net/joiningss/article/details/7057870
http://www.cnblogs.com/Jaylong/archive/2012/08/30/activity.html