05 Activity 跳转传值

时间:2022-02-10 05:02:06

第一个Activity:

package com.fmyboke;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import android.R.integer;
import android.R.string;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.SimpleAdapter;
import android.widget.Spinner; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 第一个参数 上下文
// 要跳转的activity 的class对象
Intent intent = new Intent(this, Second.class);
// 可以传string[] string int[] int .....
// 对象需要序列化
intent.putExtra("name", "张三");
intent.putExtra("nameArray", new String[] { "张三", "李四" }); //创建一个序列化对象
User user = new User();
user.setAge(18);
user.setName("范冰冰");
intent.putExtra("user", user); //使用bundle传值
Bundle bundle = new Bundle();
// 可以传string[] string int[] int .....
// 对象需要序列化
bundle.putString("name", "张三");
bundle.putStringArray("nameArray", new String[] { "张三", "李四" });
bundle.putSerializable("user", user); //放入意图中
intent.putExtra("bundle", bundle); //开始跳转至
startActivity(intent);
} static class User implements Serializable{
int age;
String name; public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} } }

跳转的Activity:

package com.fmyboke;

import java.io.Serializable;

import com.fmyboke.MainActivity.User;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle; public class Second extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
//得到意图
Intent intent = getIntent();
//获取字符串
String name = intent.getStringExtra("name");
//获取字符串数组
String[] nameArray = intent.getStringArrayExtra("nameArray");
//得到一个序列化对象
User user =(User) intent.getSerializableExtra("user"); //获取bundle
Bundle bundle = intent.getBundleExtra("bundle");
//得到一个字符串
String nameBundle = bundle.getString("name");
//得到一个字符串数组
String[] nameArrayBundle = bundle.getStringArray("nameArray");
//得到一个序列化对象
Serializable userBundle = bundle.getSerializable("user");
}
}