Activity和Intent

Intent译为意图或请求,Intent是一种运行时绑定(run-time binding)机制,它能在程序运行时连接两个不同的组件。通过Intent,你的程序可以向Android表达某种请求或意愿,Android会根据Intent的内容选择适当的组件来完成请求。

Android中三个基本组件Activity、Service和Broadcast Receiver都是通过Intent机制激活的,不同类型的组件有不同的传递Intent方式,下面看一下两个Activity之间的切换和数据传递是如何通过Intent完成的。

先创建两个class和.xml文件,把两个Activity去AndroidMainfest.xml清单文件中去注册一下,我们在Aty1.java文件中setContentView(R.layout.aty1),在Aty2.java文件中setContentView(R.layout.aty2),我们把四个文件列出来。

package com.example.csdn_activity;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;


public class Aty1 extends Activity {
	
	private Button btnStartActivity;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.aty1);
        
        btnStartActivity=(Button)findViewById(R.id.btnstartActivity);
        btnStartActivity.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				Intent intent=new Intent(Aty1.this,Aty2.class);
				Bundle data=new Bundle();
				data.putString("txt","Bonnie I love u");
				intent.putExtras(data);
				startActivity(intent);
			}
		});
    }

}

   
   

	
    
    


   
   
package com.example.csdn_activity;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class Aty2 extends Activity {
    private TextView tvOut;
	private Button btnClose;
	public void onCreate(Bundle saveInstanceState){
		super.onCreate(saveInstanceState);
		setContentView(R.layout.aty2);
		btnClose=(Button) findViewById(R.id.btnstartActivity);
		btnClose.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
					finish();
			}
		});
		tvOut=(TextView)findViewById(R.id.tvOut);
		Bundle data=getIntent().getExtras();
		String txt=data.getString("txt");
		tvOut.setContentView(txt);
	}
}

   
   

   
   
    
    
    
    
    
    
    


   
   
这样我们在第一个主Activity中点击Button后就会跳转到第二个Activity,并且在第二个Activity中显示第一个Activity中传入的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值