页面跳转并传递数据

来源:互联网 发布:数据挖掘 招聘 银行 编辑:程序博客网 时间:2024/05/17 22:32

Android里面采用Intent类实现页面跳转,并且传递数据

Intent intent = new Intent();   intent.setClass(activity1.this, activity2.class);   //描述起点和目标   Bundle bundle = new Bundle();                           //创建Bundle对象   bundle.putString("something", "Activity1发来的数据");     //装入数据   intent.putExtras(bundle);                                //把Bundle塞入Intent里面   startActivity(intent);                                     //开始切换 

Bundle是类似于Map的一种数据结构,通过key-value的形式存储数据

从跳转后的页面取出数据

Intent intent = this.getIntent();        //获取已有的intent对象   Bundle bundle = intent.getExtras();    //获取intent里面的bundle对象   String str = bundle.getString("something");    //获取Bundle里面的字符串 

用Intent可以直接传递序列化过的类,比如Student类,继承了Serializable接口

public class Student implements Serializable{private String name;private int age;    public Student(String name,int age){        this.name=name;        this.age=age;    }public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}

可以直接通过Intent传递

Student stu=new Student("张三",25);Intent intent = new Intent(); intent.putExtra("student", stu);

一般可以把跳转的代码写到被跳转的页面,如下所示

public class Page extends Activity {public static void open(Context context,Student stu){Intent i = new Intent(context, Page.class);i.putExtra("Student", stu);context.startActivity(i);}}

这样在跳转的时候,只需要调用open函数,便可以跳转,并传递所需要的内容

0 0
原创粉丝点击