intent.getSerializableExtra(转)

来源:互联网 发布:类似lofter的软件 编辑:程序博客网 时间:2024/05/04 18:07
http://hi.baidu.com/nubone/blog/item/53a21974f98c3117b051b9ba.html
Activity之间传递类对象
 

Activity之间通过Intent传递值,支持基本数据类型和String对象及它们的数组对象byte、byte[]、char、char[]、boolean、boolean[]、short、short[]、int、int[]、long、long[]、float、float[]、double、double[]、String、String[],还有实现Serializable、Parcelable接口的类对象。

传递类对象以前一直没搞懂怎么做,都是用静态引用。现在终于搞懂了,实现Serializable接口,废话少说,看代码。

传递的类

  1. public class CustomeClass implements Serializable{   
  2.        
  3.       
  4.     private static final long serialVersionUID = -7060210544600464481L;   
  5.     private String name;   
  6.     private String id;   
  7.     private int age;   
  8.     private String sex;   
  9.        
  10.     public String getName() {   
  11.         return name;   
  12.      }   
  13.     public void setName(String name) {   
  14.         this.name = name;   
  15.      }   
  16.     public String getId() {   
  17.         return id;   
  18.      }   
  19.     public void setId(String id) {   
  20.         this.id = id;   
  21.      }   
  22.     public int getAge() {   
  23.         return age;   
  24.      }   
  25.     public void setAge(int age) {   
  26.         this.age = age;   
  27.      }   
  28.     public String getSex() {   
  29.         return sex;   
  30.      }   
  31.     public void setSex(String sex) {   
  32.         this.sex = sex;   
  33.      }   
  34.   
  35.  

发送部分

  1. CustomeClass cc = new CustomeClass();   
  2. cc.setAge(21);   
  3. cc.setId("123456");   
  4. cc.setName("mingkg21");   
  5. cc.setSex("男");   
  6.   
  7. Intent intent = new Intent(this, PersonInfo.class);   
  8. intent.putExtra("PERSON_INFO", cc);   
  9. startActivity(intent);  

接收部分

  1. Intent intent = getIntent();   
  2. CustomeClass cc = CustomeClass)intent.getSerializableExtra("PERSON_INFO");   
  3. setTextView(R.id.id, cc.getId());   
  4. setTextView(R.id.name, cc.getName());   
  5. setTextView(R.id.sex, cc.getSex());   
  6. setTextView(R.id.age, String.valueOf(cc.getAge()));  
intent.getSerializableExtra(转)
0 0
原创粉丝点击