AndroidStudio实用教程(三):界面之间数据传递
提示:以下是本篇文章正文内容,下面案例可供参考
一、直接传递参数
1、发送
//实例化一个新的窗口,并指定从那个窗口到哪个窗口
intent = new Intent(MainActivity.this,secondwindow.class);
//将数据发送到intent中
intent.putExtra("name",ed_text.getText().toString().trim() );
//启动新窗口
startActivity(intent);
2、接收
//获取intent
Intent intent=getIntent();
//获取数据并显示到text中
textvew.setText(intent.getStringExtra("name"));
二、使用Bundle绑定数据
1.新建一个Class
小技巧:输入完private String name;private int age;两个属性后需只需要在studio的菜单栏code->generation->Getter setter即可自动生成这两个方法,如下所示。
代码如下:
public class user implements Serializable {
private String name;
private int 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;
}
}
2.将数据绑定并发送出去
代码如下(示例):
intent= new Intent(MainActivity.this,thirdwindow.class);
//bundle对象
Bundle b=new Bundle();
//数据对象
user user=new user();
user.setAge(180);
user.setName("李百万");
//将数据打包进bundle中
b.putSerializable("user", (Serializable) user);
//将打包好的bundle发送出去
intent.putExtras(b);
startActivity(intent);
3.接收界面接收数据
//获得绑定的数据包
Bundle bundle = getIntent().getExtras();
user user=(user) bundle.getSerializable("user");
String str="名字:"+user.getName()+" 年龄:"+user.getAge();