Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key, Object);

本文只介绍好用的Serializable方法,想知道更多请自行百度。

第一步:新建一个类一个是Person.java实现Serializable接口

Person.java:

[java] view plain copy
  1. packagecom.tutor.objecttran;
  2. importjava.io.Serializable;
  3. publicclassPersonimplementsSerializable{
  4. privatestaticfinallongserialVersionUID=-7060210544600464481L;
  5. privateStringname;
  6. privateintage;
  7. publicStringgetName(){
  8. returnname;
  9. }
  10. publicvoidsetName(Stringname){
  11. this.name=name;
  12. }
  13. publicintgetAge(){
  14. returnage;
  15. }
  16. publicvoidsetAge(intage){
  17. this.age=age;
  18. }
  19. }

第二步:发送对象

ObjectTranDemo.java:

[java] view plain copy
  1. packagecom.tutor.objecttran;
  2. importandroid.app.Activity;
  3. importandroid.content.Intent;
  4. importandroid.os.Bundle;
  5. importandroid.view.View;
  6. importandroid.view.View.OnClickListener;
  7. importandroid.widget.Button;
  8. publicclassObjectTranDemoextendsActivityimplementsOnClickListener{
  9. privateButtonsButton,pButton;
  10. publicfinalstaticStringSER_KEY="anystring";
  11. publicvoidonCreate(BundlesavedInstanceState){
  12. super.onCreate(savedInstanceState);
  13. setContentView(R.layout.main);
  14. setupViews();
  15. }
  16. //我的一贯作风呵呵
  17. publicvoidsetupViews(){
  18. sButton=(Button)findViewById(R.id.button1);
  19. sButton.setOnClickListener(this);
  20. }

  21. //Serializeable传递对象的方法
  22. publicvoidSerializeMethod(){
  23. PersonmPerson=newPerson();
  24. mPerson.setName("H3c");
  25. mPerson.setAge(23);
  26. IntentmIntent=newIntent(this,ObjectTranDemo1.class);
  27. BundlemBundle=newBundle();
  28. mBundle.putSerializable(SER_KEY,mPerson);
  29. mIntent.putExtras(mBundle);
  30. startActivity(mIntent);
  31. }
  32. //铵钮点击事件响应
  33. publicvoidonClick(Viewv){
  34. SerializeMethod();
  35. }
  36. }

第三步:接收对象

ObjectTranDemo1.java:

[java] view plain copy
  1. packagecom.tutor.objecttran;
  2. importandroid.app.Activity;
  3. importandroid.os.Bundle;
  4. importandroid.widget.TextView;
  5. publicclassObjectTranDemo1extendsActivity{
  6. @Override
  7. publicvoidonCreate(BundlesavedInstanceState){
  8. super.onCreate(savedInstanceState);
  9. TextViewmTextView=newTextView(this);
  10. PersonmPerson=(Person)getIntent().getSerializableExtra(ObjectTranDemo.SER_KEY);
  11. mTextView.setText("Younameis:"+mPerson.getName()+"/n"+
  12. "Youageis:"+mPerson.getAge());
  13. setContentView(mTextView);
  14. }
  15. }

==================================================THE END=================================================


更多相关文章

  1. Android 保存文件路径方法
  2. 阻止一进入页面就弹输入法对话框的方法
  3. Android中SQLiteOpenHelper类的onUpgrade方法的作用
  4. Android JNI cpp文件创建 java bean 对象并返回
  5. android TabHost(选项卡)的使用方法
  6. Android使用系统方法实现分享到QQ和微信!
  7. Android多种方法获取系统时间
  8. intelliJ IDEA 创建maven android工程的方法

随机推荐

  1. android 让Activity单例运行
  2. Android 日期控件的简单实现
  3. Android NDK Overview ---- Android 4.4
  4. Android 给TextView 添加图片(左右等)
  5. android通过http上传图片
  6. Android HandlerThread使用
  7. Android,visibility属性
  8. Android 自定义字体
  9. Android之MediaScanner流程
  10. Could not get resource ‘https://dl.go