六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 60|回复: 0

通过Scale的方式打开一个新的Activity

[复制链接]

升级  35.2%

212

主题

212

主题

212

主题

进士

Rank: 4

积分
676
 楼主| 发表于 2013-1-15 02:26:38 | 显示全部楼层 |阅读模式
1. ScaleActivity.java文件
package cn.com;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;public class ScaleActivity extends Activity {/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);/* 以findViewById()取得Button对象,并添加onClickListener */Button b1 = (Button) findViewById(R.id.Button01);b1.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stub/* new一个Intent对象,并指定class */Intent intent = new Intent();intent.setClass(ScaleActivity.this, Activitya.class);/* 调用Activity EX03_10_1 */startActivity(intent);}});}}
2.ScaleAnimationHelper.java文件
package cn.com;import android.content.Context;import android.view.View;import android.view.animation.AccelerateInterpolator;import android.view.animation.AlphaAnimation;import android.view.animation.Animation;import android.view.animation.AnimationSet;import android.view.animation.ScaleAnimation;public class ScaleAnimationHelper {Context con;int order;public ScaleAnimationHelper(Context con, int order) {this.con = con;this.order = order;}AlphaAnimation myAnimation_Alpha;ScaleAnimation myAnimation_Scale;public void ScaleOutAnimation(View view) {myAnimation_Alpha = new AlphaAnimation(1.0f, 0.1f);myAnimation_Scale = new ScaleAnimation(0.1f, 1.0f, 0.1f, 1f,Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,0.5f);myAnimation_Scale.setInterpolator(new AccelerateInterpolator());AnimationSet aa = new AnimationSet(true);aa.addAnimation(myAnimation_Alpha);aa.addAnimation(myAnimation_Scale);aa.setDuration(1000);view.startAnimation(aa);}public void ScaleInAnimation(View view) {myAnimation_Scale = new ScaleAnimation(1.0f, 0.0f, 1.0f, 0.0f,Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,0.5f);myAnimation_Scale.setDuration(1000);myAnimation_Scale.setInterpolator(new AccelerateInterpolator());AnimationSet aa = new AnimationSet(true);aa.addAnimation(myAnimation_Scale);// aa.setDuration(1000);view.startAnimation(aa);}}
3. Activitya.java文件
package cn.com;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.Button;import android.widget.LinearLayout;import android.view.View.OnClickListener;public class Activitya extends Activity implements OnClickListener {ViewGroup v;/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.newq);v = (LinearLayout) findViewById(R.id.news);Button Button01 = (Button) findViewById(R.id.Button01);Button01.setOnClickListener(this);// 显示layout进行缩放动画效果ScaleAnimationHelper scaleHelper = new ScaleAnimationHelper(this, 1);scaleHelper.ScaleOutAnimation(v);}@Overridepublic void onClick(View v) {// TODO Auto-generated method stub// 显示layout进行缩放动画效果//ScaleAnimationHelper scaleHelper = new ScaleAnimationHelper(this, 1);//scaleHelper.ScaleInAnimation(v);}}
4.main.xml文件
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical" android:layout_width="fill_parent"android:layout_height="fill_parent"><Button android:text="StartActivity" android:id="@+id/Button01"android:layout_width="wrap_content" android:layout_height="wrap_content"></Button></LinearLayout>
5.newq.xml文件
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent" android:background="#123456"android:layout_height="fill_parent" android:id="@+id/news"android:orientation="vertical"><TextView android:text="this is the second activity"android:id="@+id/TextView01" android:layout_width="wrap_content"android:layout_height="wrap_content"></TextView></LinearLayout>
注意2个Activity都需要在Manifest文件中进行申明
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表