安卓传递值对象

来源:互联网 发布:瓷砖库存软件 编辑:程序博客网 时间:2024/05/15 12:42

先定义一个类

public class send implements Serializable{//implements serializable是序列化,啥是序列化以后再说,反正不加这个会报错    private String name;    private int age;    public String getname()    {        return name;    }    public  void setName(String name)    {        this.name=name;    }    public int getage()    {        return age;    }    public void setAge(int age)    {        this.age=age;    }    public send(String name,int age)//构造函数    {        this.name=name;        this.age=age;    }}

在主函数里

findViewById(R.id.btsendvalue).setOnClickListener(new View.OnClickListener() {    @Override    public void onClick(View view) {        Intent i=new Intent(MainActivity.this,newacty.class);//新建一个传值对象       // i.putExtra("data","hello Mr.zheng,I'm android");//设置要传的值       // Bundle b=new Bundle();       // b.putString("name","zheng");       // b.putInt("age",22);       // b.putString("sex","man");       // i.putExtras(b);        i.putExtra("send1",new send("hello,MR.zheng,i'm your android asistant",22));        startActivity(i);    }});

另一个activity里

Intent i= getIntent();//获得传过来的值// Bundle data=i.getExtras(); tv=(TextView)findViewById(R.id.tv);//获得id为tv的这个控件并将它赋给tv这个变量; //tv.setText(String.format("name=%s,age=%d,sex=%s",data.getString("name"),data.getInt("age"),data.getString("sex")));//format为格式转化 //tv.setText(i.getStringExtra("data"));//设置tv的值为data里的值 send send1=(send)i.getSerializableExtra("send1"); tv.setText(String.format("send info(name=%s,age=%d)",send1.getname(),send1.getage()));
在另一个activity里接收了来自主函数传过来的函数。
注释的东西不予理睬,以往调试代码



0 0
原创粉丝点击