在Android中通过intent只能传递基本类型的数据,如果想要传递自定义的javabean,必须实现Serializable或者Parcelable接口。Parcelable接口是在Android新引入的接口。使用方法如下:

        
  1. publicclassDownloadItemimplementsParcelable{
  2. privateStringurl;
  3. privateStringgameName;
  4. privateStringgamePkgName;
  5. privateinttotal_bytes;
  6. privateintcurrent_bytes;
  7. privateStringpath;
  8. publicDownloadItem(){};
  9. publicDownloadItem(Stringurl,StringgameName,StringgamePkgName,
  10. inttotal_bytes,intcurrent_bytes,Stringpath){
  11. super();
  12. this.url=url;
  13. this.gameName=gameName;
  14. this.gamePkgName=gamePkgName;
  15. this.total_bytes=total_bytes;
  16. this.current_bytes=current_bytes;
  17. this.path=path;
  18. }
  19. @Override
  20. publicStringtoString(){
  21. return"DownloadItem[url="+url+",gameName="+gameName
  22. +",gamePkgName="+gamePkgName+",total_bytes="
  23. +total_bytes+",current_bytes="+current_bytes+",path="
  24. +path+"]";
  25. }
  26. publicStringgetUrl(){
  27. returnurl;
  28. }
  29. publicvoidsetUrl(Stringurl){
  30. this.url=url;
  31. }
  32. publicStringgetGameName(){
  33. returngameName;
  34. }
  35. publicvoidsetGameName(StringgameName){
  36. this.gameName=gameName;
  37. }
  38. publicStringgetGamePkgName(){
  39. returngamePkgName;
  40. }
  41. publicvoidsetGamePkgName(StringgamePkgName){
  42. this.gamePkgName=gamePkgName;
  43. }
  44. publicintgetTotal_bytes(){
  45. returntotal_bytes;
  46. }
  47. publicvoidsetTotal_bytes(inttotal_bytes){
  48. this.total_bytes=total_bytes;
  49. }
  50. publicintgetCurrent_bytes(){
  51. returncurrent_bytes;
  52. }
  53. publicvoidsetCurrent_bytes(intcurrent_bytes){
  54. this.current_bytes=current_bytes;
  55. }
  56. publicStringgetPath(){
  57. returnpath;
  58. }
  59. publicvoidsetPath(Stringpath){
  60. this.path=path;
  61. }
  62. @Override
  63. publicintdescribeContents(){
  64. //TODOAuto-generatedmethodstub
  65. return0;
  66. }
  67. @Override
  68. publicvoidwriteToParcel(Parceldest,intflags){
  69. dest.writeString(this.url);
  70. dest.writeString(this.gameName);
  71. dest.writeString(this.gamePkgName);
  72. dest.writeInt(this.total_bytes);
  73. dest.writeInt(this.current_bytes);
  74. dest.writeString(this.path);
  75. }
  76. publicstaticfinalParcelable.Creator<DownloadItem>CREATOR=newParcelable.Creator<DownloadItem>(){
  77. @Override
  78. publicDownloadItemcreateFromParcel(Parcelsource){
  79. returnnewDownloadItem(source.readString(),source.readString(),source.readString(),source.readInt(),source.readInt(),source.readString());
  80. }
  81. @Override
  82. publicDownloadItem[]newArray(intsize){
  83. returnnewDownloadItem[size];
  84. }
  85. };
  86. }

更多相关文章

  1. Android类库介绍
  2. Android(安卓)WiFi 架构总览(模块及接口)
  3. android input 事件传递主要流程
  4. [置顶] 调用Android发短信接口Intent.ACTION_SENDTO
  5. Android(安卓)Interface Definition Language (AIDL)
  6. Android中的Parcelable接口
  7. android studio 使用adb 命令传递文件到android 设备的方法
  8. Android(安卓)接口定义语言 (AIDL)
  9. Android的AIDL机制

随机推荐

  1. Android(安卓)Studio 1.5.1更新说明与下
  2. Android(安卓)TTS学习――TTS初体验(中)
  3. Android(安卓)序列化
  4. Android(安卓)绘制折线和柱状图
  5. C#、Golang、Python、Java(Android)之间Des
  6. Android(安卓)sdk version and API level
  7. 仅layout使用继承TextView,报java.lang.Nu
  8. 2011.06.17)——— android MotionEvent中
  9. android内存溢出的解决方法
  10. android 支持的Html标签