首页 > 系统 > Android > 正文

Android Intent传递对象和ArrayList

2019-11-09 15:05:38
字体:
来源:转载
供稿:网友
权声明:本文为博主原创文章,未经博主允许不得转载。

         以前做项目的时候,需要Intent 传递复杂类型,例如:数组,ArrayList类型,传递类对象,今天抽空写了个例子,方便以后用的时候查询!有问题可以留言;

转载请标明出处:

http://blog.csdn.net/wdaming1986/article/details/6762633

                   程序主界面                                    点击list按钮传递数据:    

                            

                  点击parcelable传递数据:                                             点击serializable传递数据:

                              

下面看代码:

一、MainAcitivty。java类的代码:

[java] view plain copy PRint?<span style="color: rgb(0, 0, 0); font-size: 16px;">package com.cn.daming;   import java.io.Serializable; import java.util.ArrayList;  import java.util.HashMap; import java.util.List;  import java.util.Map;    import android.app.Activity; import android.app.ListActivity;  import android.content.Intent; import android.graphics.Color;  import android.graphics.drawable.GradientDrawable; import android.graphics.drawable.GradientDrawable.Orientation; import android.os.Bundle; import android.view.View;  import android.view.View.OnClickListener; import android.widget.Button;    public class MainActivityextends Activity implements Serializable{           private staticfinal long serialVersionUID = 1L;           private String s_name;      private int s_number;     private String s_sex;            private Button list_Button;      private Button ser_Button;     private Button par_Button;      private ArrayList<String> m_list;           public  finalstatic String PAR_KEY = "com.cn.daming.parcelable";     public  finalstatic String SER_KEY = "com.cn.daming.serializable";     public  finalstatic String LIST_KEY = "com.cn.daming.ArrayList";     @Override      public void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.main);          initlist();          drawBackground();          initList_Button();          initPar_Button();          inintSer_Button();      }            public void initlist()     {          m_list = new ArrayList<String>();         m_list.add("大明ArrayList");          m_list.add("年龄:25岁");         m_list.add("性别:男");      }            public void drawBackground()     {          GradientDrawable grad = new GradientDrawable(                     Orientation.TL_BR,                     new int[] {Color.rgb(0,0, 127),                               Color.rgb(0,0, 255),                               Color.rgb(127,0, 255),                               Color.rgb(127,127, 255),                               Color.rgb(127,255, 255),                               Color.rgb(255,255, 255)}          );             this.getWindow().setBackgroundDrawable(grad);     }            public void initList_Button()     {          list_Button = (Button)findViewById(R.id.list_button);          list_Button.setOnClickListener(new OnClickListener(){               @Override             public void onClick(View arg0) {                 Intent list_intent = new Intent();                  list_intent.putStringArrayListExtra(LIST_KEY, m_list);                 list_intent.setClass(MainActivity.this, ShowListView.class);                 startActivity(list_intent);              }          });      }            public void initPar_Button()     {          par_Button = (Button)findViewById(R.id.par_button);         par_Button.setOnClickListener(new OnClickListener(){               @Override              public void onClick(View arg0) {                   Student m_Student = new Student();                   m_Student.setName("大明例子");                  m_Student.setAge(25);                  m_Student.setSex("男");                  Intent p_Intent = new Intent(MainActivity.this,ShowParView.class);                    Bundle mBundle = new Bundle();                    mBundle.putParcelable(PAR_KEY, m_Student);                   p_Intent.putExtras(mBundle);                     startActivity(p_Intent);                }          });      }            public void inintSer_Button()     {          ser_Button = (Button)findViewById(R.id.ser_button);         ser_Button.setOnClickListener(new OnClickListener(){               @Override              public void onClick(View arg0) {                      MainActivity s_activity = new MainActivity();                       s_activity.setS_name("Daming Serlizable!");                       s_activity.setS_number(25);                      s_activity.setS_sex("男");                       Intent mIntent = new Intent(MainActivity.this,ShowSerView.class);                       Bundle mBundle = new Bundle();                        mBundle.putInt("state",3);                      mBundle.putSerializable(SER_KEY, s_activity);                     mIntent.putExtras(mBundle);                        startActivity(mIntent);                }          });      }                  public void setS_name(String s_name) {         this.s_name = s_name;      }        public String getS_name() {         return s_name;      }        public void setS_number(int s_number) {         this.s_number = s_number;      }        public int getS_number() {         return s_number;      }        public void setS_sex(String s_sex) {         this.s_sex = s_sex;      }        public String getS_sex() {         return s_sex;      }  }</span> 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表