Activity无动画跳转

首先,情况是这样的,我需要在Activity跳转没有动画,返回的时候也没有动画。在网上参考了其他的博客,都只是实现了跳转无动画,并没有实现返回无动画。

有博客提出通过修改theme里面的内容来实现,经测试出现无动画,但返回还是有动画。

通过修改theme,似乎退出还是有+_+。

[java]  view plain  copy
  1. <item name="android:windowAnimationStyle">@style/noAnimation</item>    
  2.     <item name="android:windowNoTitle">true</item>    
  3. </style>    

[java]  view plain  copy
  1. <style name="Theme" parent="android:Theme">  <pre name="code" class="java"><style name="noAnimation">    
  2.         <item name="android:activityOpenEnterAnimation">@null</item>      
  3.         <item name="android:activityOpenExitAnimation">@null</item>     
  4.         <item name="android:activityCloseEnterAnimation">@null</item>     
  5.         <item name="android:activityCloseExitAnimation">@null</item>    
  6.         <item name="android:taskOpenEnterAnimation">@null</item>     
  7.         <item name="android:taskOpenExitAnimation">@null</item>    
  8.         <item name="android:taskCloseEnterAnimation">@null</item>    
  9.         <item name="android:taskCloseExitAnimation">@null</item>      
  10.         <item name="android:taskToFrontEnterAnimation">@null</item>    
  11.         <item name="android:taskToFrontExitAnimation">@null</item>     
  12.         <item name="android:taskToBackEnterAnimation">@null</item>    
  13.         <item name="android:taskToBackExitAnimation">@null</item>  
  14.     </style>    
[java]  view plain  copy
  1. <activity android:name=".HomeActivity"    
  2.           android:label="@string/app_name"    
  3.           android:theme="@style/Theme">   

 
 

其实我觉得很奇怪,按道理来说应该可以设置成功了,但似乎退出Activity确实没起效果。

后通过查阅,可以通过overridePendingTransition(0,0);去控制。

代码如下:

在准备跳转后添加。

[java]  view plain  copy
  1. Intent intent = new Intent(getActivity(),SearchListActivity.class);  
  2. startActivity(intent);  
  3. getActivity().overridePendingTransition(00);  
在返回的Activity界面onPause方法中添加就可以了。

[java]  view plain  copy
  1. @Override  
  2. protected void onPause() {  
  3.     overridePendingTransition(0,0);  
  4.     super.onPause();  
  5. }  

就可以实现跳转过去无动画,返回无动画了。

发布了5 篇原创文章 · 获赞 0 · 访问量 1671

猜你喜欢

转载自blog.csdn.net/yanlei_cs/article/details/53105788