Android 仿微信Activity左右切换 【全局配置Activity显示动画】

Android 仿微信Activity左右切换 【全局配置Activity显示动画】

分类: Android UI设计   1167人阅读  评论(1)  收藏  举报
android activity动画 全局配置动画

如题:反编译的了微信的包才知道这做饭,惭愧惭愧...

Android 仿微信Activity左右切换 【全局配置Activity显示动画】_第1张图片      Android 仿微信Activity左右切换 【全局配置Activity显示动画】_第2张图片

AndroidManifest.xml 注意application节点 的android:theme属性



[html]  view plain copy print ?
  1. <manifest xmlns:android="http://schemas.android.com/apk/res/android"  
  2.     package="com.example.activityanimationdemo"  
  3.     android:versionCode="1"  
  4.     android:versionName="1.0" >  
  5.   
  6.     <uses-sdk  
  7.         android:minSdkVersion="8"  
  8.         android:targetSdkVersion="15" />  
  9.   
  10.     <application  
  11.         android:icon="@drawable/ic_launcher"  
  12.         android:label="@string/app_name"  
  13.         android:theme="@style/AppTheme" >  
  14.         <activity  
  15.             android:name=".OneActivity"  
  16.             android:label="@string/title_activity_main" >  
  17.             <intent-filter>  
  18.                 <action android:name="android.intent.action.MAIN" />  
  19.   
  20.                 <category android:name="android.intent.category.LAUNCHER" />  
  21.             </intent-filter>  
  22.         </activity>  
  23.         <activity android:name=".TwoActivity" >  
  24.         </activity>  
  25.         <activity android:name=".ThreeActivity" >  
  26.         </activity>  
  27.     </application>  
  28.   
  29. </manifest>  


看这里,主要的部分:styles.xml 


[java]  view plain copy print ?
  1. <resources xmlns:android="http://schemas.android.com/apk/res/android">  
  2.   
  3.     <style name="AppTheme" parent="@android:style/Theme">  
  4.   
  5.         <!-- 设置没有标题 -->  
  6.         <item name="android:windowNoTitle">true</item>  
  7.         <!-- 设置activity切换动画 -->  
  8.         <item name="android:windowAnimationStyle">@style/activityAnimation</item>  
  9.     </style>  
  10.     <!-- animation 样式 -->  
  11.     <style name="activityAnimation" parent="@android:style/Animation">  
  12.         <item name="android:activityOpenEnterAnimation">@anim/slide_right_in</item>  
  13.         <item name="android:activityOpenExitAnimation">@anim/slide_left_out</item>  
  14.         <item name="android:activityCloseEnterAnimation">@anim/slide_left_in</item>  
  15.         <item name="android:activityCloseExitAnimation">@anim/slide_right_out</item>  
  16.     </style>  
  17.   
  18. </resources>  

slide_left_in.xml

[html]  view plain copy print ?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <set xmlns:android="http://schemas.android.com/apk/res/android" >  
  3.   
  4.     <translate  
  5.         android:duration="200"  
  6.         android:fromXDelta="-100.0%p"  
  7.         android:toXDelta="0.0" />  
  8.   
  9. </set>  

slide_left_out.xml

[html]  view plain copy print ?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <set xmlns:android="http://schemas.android.com/apk/res/android" >  
  3.   
  4.     <translate  
  5.         android:duration="200"  
  6.         android:fromXDelta="0.0"  
  7.         android:toXDelta="-100.0%p" />  
  8.   
  9. </set>  


slide_right_in.xml

[html]  view plain copy print ?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <set xmlns:android="http://schemas.android.com/apk/res/android" >  
  3.   
  4.     <translate  
  5.         android:duration="200"  
  6.         android:fromXDelta="100.0%p"  
  7.         android:toXDelta="0.0" />  
  8.   
  9. </set>  


slide_right_out.xml

[html]  view plain copy print ?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <set xmlns:android="http://schemas.android.com/apk/res/android" >  
  3.   
  4.     <translate  
  5.         android:duration="200"  
  6.         android:fromXDelta="0.0"  
  7.         android:toXDelta="100.0%p" />  
  8.   
  9. </set>  


Activity 代码,很简单,就是startactivity而已不需要什么特别的
[java]  view plain copy print ?
  1. package com.example.activityanimationdemo;  
  2.   
  3. import android.app.Activity;  
  4. import android.content.Intent;  
  5. import android.os.Bundle;  
  6. import android.view.View;  
  7.   
  8. /** 
  9.  *  
  10.  * @fileName OneActivity.java 
  11.  * @author naibo-liao 
  12.  * @CreateTime 2013-5-20 上午11:55:04 
  13.  */  
  14. public class OneActivity extends Activity {  
  15.   
  16.     public void onCreate(Bundle savedInstanceState) {  
  17.         super.onCreate(savedInstanceState);  
  18.         setContentView(R.layout.layout_one);  
  19.         findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() {  
  20.             @Override  
  21.             public void onClick(View v) {  
  22.                 startActivity(new Intent(OneActivity.this, TwoActivity.class));  
  23.             }  
  24.         });  
  25.         // 返回事件  
  26.         findViewById(R.id.btn_exit).setOnClickListener(  
  27.                 new View.OnClickListener() {  
  28.                     @Override  
  29.                     public void onClick(View v) {  
  30.                         finish();  
  31.                     }  
  32.                 });  
  33.     }  
  34. }  

上一张工程图

Android 仿微信Activity左右切换 【全局配置Activity显示动画】_第3张图片


就这些

你可能感兴趣的:(android,UI设计)