我们都知道绚丽的APP总会给用户耳目一新的感觉,为了抓住用户更大网络公司使出浑身解数让自己的产品更绚丽,而绚丽最简单的效果就是Activity跳转效果,不仅可以让用户看起来舒服,而且实现起来也特别简单,好,下面就让我们实现这些效果,告别原生态的跳转效果吧!

首先新建一个Android项目,起名叫作AndroidSwitch。实在不知道起什么名字了,就有道了一个这样的名字,首先让我们先看一下XML代码很简单,就一个LIstview 代码如下所示:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" > <ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView> </LinearLayout>

这个XML中的ListView主要负责盛装一些效果的点击事件,显示效果的文字我会放在Values,一起同项目给你们!跳转效果.跳转效果,最重要的当然是动画了,.没有动画谈何效果,所以我们在res文件新建一个anim文件用于放各种动画,动画挺多的,我就举一个简单的XML.就不一一举例了,我会把项目给你们的,可以自己去看!如下所示:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" > <translate
android:duration=""
android:fromXDelta=""
android:toXDelta="-100%p" /> </set>

是不是很简单呀,好,竟然动画也编辑完了,我们就需要在哪调用它.对了,我们还需要一个跳转SecondActivity,在这个 SecondActivity 里面我只放了一个Button用于返回,这样不用按Back键那么麻烦了,它的作用只是为了显示第一个Activity跳转的效果,让我看.如下所示:

package com.zqy.androidswitch;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button; public class SecondActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.act_second);
final Button button=(Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() { @Override
public void onClick(View v) {
finish();
}
});
}
}

好,基本完成一半了,我需要写实现的代码了,这属于核心了,让我们看看核心代码是怎么实现的吧:如下所示:

package com.zqy.androidswitch;

import java.util.ArrayList;
import java.util.List; import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.AdapterView.OnItemClickListener; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ListView listView = (ListView) findViewById(R.id.listView1);
String[] ls = getResources().getStringArray(R.array.anim_type);
List<String> list = new ArrayList<String>();
for (int i = ; i < ls.length; i++) {
list.add(ls[i]);
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, list);
adapter.setDropDownViewResource(android.R.layout.simple_list_item_1);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new OnItemClickListener() { @Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);
switch (position) {
case :
overridePendingTransition(R.anim.fade, R.anim.hold);
break;
case :
overridePendingTransition(R.anim.my_scale_action,
R.anim.my_alpha_action);
break;
case :
overridePendingTransition(R.anim.scale_rotate,
R.anim.my_alpha_action);
break;
case :
overridePendingTransition(R.anim.scale_translate_rotate,
R.anim.my_alpha_action);
break;
case :
overridePendingTransition(R.anim.scale_translate,
R.anim.my_alpha_action);
break;
case :
overridePendingTransition(R.anim.hyperspace_in,
R.anim.hyperspace_out);
break;
case :
overridePendingTransition(R.anim.push_left_in,
R.anim.push_left_out);
break;
case :
overridePendingTransition(R.anim.push_up_in,
R.anim.push_up_out);
break;
case :
overridePendingTransition(R.anim.slide_left,
R.anim.slide_right);
break;
case :
overridePendingTransition(R.anim.wave_scale,
R.anim.my_alpha_action);
break;
case :
overridePendingTransition(R.anim.zoom_enter,
R.anim.zoom_exit);
break;
case :
overridePendingTransition(R.anim.slide_up_in,
R.anim.slide_down_out);
break; default:
break;
} }
}); }
}

用Listview盛装各种效果的点击事件,我们点击LIstview在根据点击位置去执行什么样的动画.不知道手机怎么做出gif图片,我就把主页面显示出来吧,大家一会可以下载Demo.

好了,基本实现完了.是不是很简单.有了这些动画,就会让你的APP多了一道绚丽的风景线,可以直接拿到项目里面用哦!最后来一句,.大神勿喷,适合新手!

源码下载,请点击这里

Android Activity跳转动画,让你的APP瞬间绚丽起来的更多相关文章

  1. AndroidActivity跳转动画,让你的APP瞬间绚丽起来

    我们都知道绚丽的APP总会给用户耳目一新的感觉,为了抓住用户更大网络公司使出浑身解数让自己的产品更绚丽,而绚丽最简单的效果就是Activity跳转效果,不仅能够让用户看起来舒服,并且实现起来也特别简单 ...

  2. (转)Android四大组件——Activity跳转动画、淡出淡入、滑出滑入、自定义退出进入

    文章转自:http://blog.csdn.net/qq_30379689/article/details/52494270 Activity跳转动画.淡入淡出.滑入滑出.自定义退出进入 前言: 系统 ...

  3. 【起航计划 004】2015 起航计划 Android APIDemo的魔鬼步伐 03 App->Activity->Animation Activity跳转动画 R.anim.×× overridePendingTransition ActivityOptions类

    App->Activity->Animation示例用于演示不同Activity切换时动态效果. android 5.0例子中定义了6种动画效果: 渐变Fade In 缩放Zoom In ...

  4. Android四大组件——Activity跳转动画、淡出淡入、滑出滑入、自定义退出进入

    Activity跳转动画.淡入淡出.滑入滑出.自定义退出进入 前言: 系统中有两个定义好的Activity跳转动画:fade_in.fade_out.slide_in_left.slide_out_r ...

  5. Android Activity的切换动画

    Android的Activity切换有两种方法, 第一种是用代码方式实现: Activity A跳转到Activity B,要在startActivity(intent)后面加上overridePen ...

  6. 实现activity跳转动画的若干种方式

    第一种: (使用overridePendingTransition方法实现Activity跳转动画) 在Activity中代码如下 /** * 点击按钮实现跳转逻辑 */ button1.setOnC ...

  7. Android的Activity跳转动画各种效果整理

    Android的Activity跳转就是很生硬的切换界面.其实Android的Activity跳转可以设置各种动画,本文整理了一些,还有很多动画效果,就要靠我们发挥自己的想象力 大家使用Android ...

  8. android activity 跳转传值问题研究

    intent = new Intent(); intent.setClass(LoginActivity.this, RegActivity.class); startActivity(intent) ...

  9. Android——Activity跳转

    Activity_main.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayou ...

随机推荐

  1. 安卓手机用-----Exchange Activesync---同步Gmail日历联系人

    微软Exchange Activesync是一个跨平台的移动设备同步协议 支持很多手机操作系统,比如诺基亚的塞班.黑莓的palm.WindowsMobile.Iphone.安卓等.这些手机上都可以用这 ...

  2. C语言超级经典400道题目

    C语言超级经典400道题目 1.C语言程序的基本单位是____ A) 程序行 B) 语句 C) 函数 D) 字符.C.1 2.C语言程序的三种基本结构是____构A.顺序结构,选择结构,循环结 B.递 ...

  3. java数组复制的方式和效率比较

    java中,数组的复制有以下三种方式: 1. 调用System.arraycopy(Arrays.copyOfRange可以当作第四种,但是底层调用的是System.arraycopy,所以,认为是同 ...

  4. Hibernate 配置详解(8)

    hibernate.generate_statistics 这个配置大家应该都很熟悉,用于开启Hibernate统计信息,便于对Hibernate相关性能调试提供数据依据.在开发过程当中,可以把这个选 ...

  5. 诺基亚HERE地图

    1.基本图层 2.3D图层 3.卫星图层 4.地形图层 5.在线帮助

  6. UESTC_Eight Puzzle 2015 UESTC Training for Search Algorithm & String<Problem F>

    F - Eight Puzzle Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) ...

  7. No enclosing instance of type Outer is accessible. Must qualify the allocation with an enclosing instance of type Outer (e.g. x.new A() where x is an instance of Outer)

    之前看内部类的时候没发现这个问题,今天写代码的时候遇到,写个最简单的例子: 下面这一段代码 红色的部分就是编译报错: No enclosing instance of type Outer is ac ...

  8. Modulo Sum(背包 + STL)

     Modulo Sum time limit per test 2 seconds memory limit per test 256 megabytes input standard input o ...

  9. python中使用mahotas包实现高斯模糊

    高斯模糊 import mahotas as mh import numpy as np from matplotlib import pyplot as plt image=mh.imread('i ...

  10. C#主要字典集合性能对比[转]

    A post I made a couple days ago about the side-effect of concurrency (the concurrent collections in ...