android学习之intent跳转一

android中intent主要是用来实现activity的跳转和消息的传递

这里我首先通过简单的两个例子来说明跳转和简单的消息的传递,然后简单数据的回传在后面的例子在android学习之intent跳转二里面,android中的xml布局我就没有写了

package com.example.jumptoothera;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;

public class MainActivity extends Activity {
	public static MainActivity activity;

	// getInstance获得当前对象,这个是为了在第二个activity里面,可以关闭第一个activity,可以不管
	public static MainActivity getInstance() {
		return activity;
	}

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		// 将本类对象给给activity
		activity = this;
	}

	public void myonclick(View view) {
		// Intent 意图,四大组件的桥梁,我们通过它在四大组件之间传递消息,启动组件
		// Intent 第一个参数,当前类对象,第二个参数,第二个类对象(类型.class,Class.ForName(类名))
		Intent intent = new Intent(MainActivity.this, SecondActivity.class);
		// 启动intent
		startActivity(intent);

	}

}

package com.example.jumptoothera;

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

public class SecondActivity extends Activity {
	Button bu;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		bu = (Button) findViewById(R.id.bu_j);
		bu.setText("关闭第二个activity");
	}

	public void myonclick(View v) {
		// 关闭第二个activity
		SecondActivity.this.finish();
		// 获取Mainactivity并关闭
		// MainActivity m=MainActivity.getInstance();
		// m.finish();
		// 上面的关闭Mainactivity的方式并不推荐
		// 我们在使用上面的方式的时候必须注意上面的activity是否为空
	}

}

package com.example.jumptodata;

import com.example.jumptoothera.R;

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

public class FirstActivity extends Activity {
	EditText et;
	Button bt;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.first);

		et=(EditText) findViewById(R.id.et_data);
		bt=(Button) findViewById(R.id.bth_check);
	}
	
	public void myonClick(View view) {
		//获取数据
		String data=et.getText().toString();
		//启动activity
		Intent intent=new Intent(FirstActivity.this,SecActivity.class);
	//Intent中含有一个Bundle的容器,类似哈希map是以键值对的对象存放数据.
		//数据可以填基本类型或者是可序列化的对象
		intent.putExtra("key", data);
		startActivity(intent);
		
	}

}

package com.example.jumptodata;

import com.example.jumptoothera.R;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class SecActivity extends Activity {
	TextView tv;
	@Override
	
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.second);
		tv=(TextView) findViewById(R.id.tv_data);
		//拿到intent;
		Intent intent=getIntent();
		String data=intent.getStringExtra("key").toString();
		
	    tv.setText(data);
		
		
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值