android中activity间动画跳转

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">        android中activity间动画跳转,如何能添加上动画,app的用户交互性就显得提升不少。</span>

我们的项目的不仅仅包括业务功能,用户体验和交互我们也得充分考虑。

 android中activity间动画跳转,可以是个别anctivity间,也可以设置所有activity的动画跳转和退出跳转。像我们都比较熟悉的大众点评网,已经这样做了。

首先,我们来说说单个anctivity的动画跳转;

overridePendingTransition(int enterAnim, int exitAnim)这个函数就可帮我们实现,前提是准备好跳转动画资源,可以使系统的,也可以是自定义的。看实例代码:

package com.example.flashScreen;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;

/**
 * 
* @ClassName: SplashScreen 
* @Description: TODO(跳转动画) 
* @author daodao ( dao.dev@qq.com ) 
* @date 2014年11月25日 上午10:06:51 
*
 */
public class SplashScreen extends Activity {
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);

		setContentView(R.layout.splashscreen);

		new Handler().postDelayed(new Runnable() {
			@Override
			public void run() {
//				Intent mainIntent = new Intent(SplashScreen.this,
//						MainActivity.class);
				Intent mainIntent = new Intent(SplashScreen.this,
						com.example.TranslateAnimation.Menu.TranslateAnimationMenu.class);
				SplashScreen.this.startActivity(mainIntent);
				SplashScreen.this.finish();
				
				//实现淡入淡出的效果  
				overridePendingTransition(android.R.anim.fade_in,
						android.R.anim.fade_in);
				
				//由左向右滑入的效果
//				overridePendingTransition(android.R.anim.slide_in_left,android.
//						R.anim.slide_out_right);
				
				//实现 zoomin 和 zoomout,即类似 iphone 的进入和退出时的效果  (自定义动画zoomin,zoomout)	 
				 overridePendingTransition(R.anim.zoomin, R.anim.zoomout);
			}
		}, 3000);
	}

}
 

再者,我们来谈谈项目中所有anctivity的动画跳转,即适应于全局的动画跳转;


准备好进入和退出动画资源文件,接下来我们需要定义样式资源,之前我们设置动画效果都是写在activity中,只能对单个activity定义动画。现在我们对所有的activity定义动画效果,我们不妨设想一下应该定义一个样式,在所有包裹activity的地方引入样式。这样我们就想到了AndroidManifest.xml里的application 了,他里面生命所有的activity,明白了这些就好办了。

     接下来我们在style.xml声明动画的样式

    <style name="MyAnimationActivity" mce_bogus="1">
		<item name="android:windowAnimationStyle">@style/AnimationActivity</item>
		<item name="android:windowNoTitle">true</item>
	</style>
     <style name="AnimationActivity" parent="@android:style/Animation.Activity" mce_bogus="1">
		<item name="android:activityOpenEnterAnimation">@anim/anim_enter</item>
		<item name="android:activityOpenExitAnimation">@anim/anim_exit</item>
		
		<item name="android:activityCloseEnterAnimation">@anim/back_enter</item>
		<item name="android:activityCloseExitAnimation">@anim/back_exit</item>
	</style>

 然后在 AndroidManifest.xml里声明样式

	 <application
  	 android:icon="@drawable/ic_launcher" 
	 android:theme="@style/MyAnimationActivity"
         android:label="@string/app_name" >
        <activity
            android:label="@string/app_name"
            android:name=".StartActivity" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
         <activity android:name=".OtherActivity1"></activity>  <activity android:name=".OtherActivity2"></activity> <activity android:name=".OtherActivity3"></activity>
    </application>

      so,这样就完成类似于大众点评网activity的动画跳转的功能





  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值