使用boundle在界面间传递对象

Student类

 

package com.example.intenttry;

import java.io.Serializable;
import android.R.string;

public class Student implements Serializable  //必须继承这个接口才能在后面使用序列
{
 String name;
 String sex;
 int age;
 
 public Student(String name1,String sex1,int age1) {
  // TODO Auto-generated constructor stub
  this.name=name1;
  this.sex=sex1;
  this.age=age1;
 }
 
 public void setName(String name)
 {
  this.name=name;
 }
 public String getName( ) {
  return name;
 }
 
 public void setSex(String sex)
 {
  this.sex=sex;
 }
 public String getSex( )
 {
  return sex;
 }
 
 public void setAge(int age)
 {
  this.age=age;
 }
 public int getAge( )
 {
  return age;
 }
}

MainActivity类


public class MainActivity extends Activity {

 private EditText nameEdit;
 private EditText SexEdit;
 private EditText ageEdit;
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        nameEdit=(EditText)findViewById(R.id.nameEdit);
        SexEdit=(EditText)findViewById(R.id.Editsex);
        ageEdit=(EditText)findViewById(R.id.Editage);
       
        Button btnButton=(Button)findViewById(R.id.btn1);
        btnButton.setOnClickListener(new btnListener());
    }
    class btnListener implements OnClickListener
    {

  @Override
  public void onClick(View v) {
   // TODO Auto-generated method stub
   String age=ageEdit.getText().toString();
   //实例化一个对象student
   Student student=new Student(nameEdit.getText().toString(), SexEdit.getText().toString(), Integer.valueOf(age.toString()));
   // 实例化一个boundle类,存放一个student对象
   Bundle bundle=new Bundle();
   //使用boundle的putSerializable方法存放一个对象
   bundle.putSerializable("stu", (Serializable) student);
   Intent intent=new Intent();
   intent.setClass(MainActivity.this, OtherActivity.class);
   //将对象存入intent对象中,传到另一个activity中
   intent.putExtras(bundle);
   startActivity(intent);
  }
     
    }
}

OtherActivity类


public class OtherActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_other);
       
       TextView tView=(TextView)findViewById(R.id.tv);
       
       //获取intent
        Intent intent=getIntent();
        //获取boundle传过来的数据
        Bundle bouBundle=intent.getExtras();
        //获取student对象中的数据
        Student student=(Student)bouBundle.getSerializable("stu");
        tView.setText(student.getName()+student.getSex()+student.getAge());
    }

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值