Android中的数据传递

来源:互联网 发布:资生堂淘宝有旗舰店吗 编辑:程序博客网 时间:2024/05/16 07:35

Intent可以用来开启Activity,也可以用来数据传递。

Intent中的putExtra()方法传递数据,第一个参数接收的是key,第二个参数接收的是value。


jumpA.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,Farm1.class);
                startActivity(intent);
            }
        });


//传递数据

public void add(View v){
        Intent intent=new Intent(Farm1.this,AddMore.class);
        startActivityForResult(intent,1);
    }


//回传数据

btn_save.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent();
                Bundle bundle=new Bundle();
                String variety=add_variety.getText().toString().trim();
                String amount=add_amount.getText().toString().trim();
                String seed=add_seed.getText().toString().trim();
                String market=add_market.getText().toString().trim();


                bundle.putString("variety",variety);
                bundle.putString("amount",amount);
                bundle.putString("seed",seed);
                bundle.putString("market",market);
                intent.putExtras(bundle);
                setResult(2,intent);
                finish();
            }
        });


//接收回传数据

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == 1 && resultCode == 2){
            Bundle bundle=data.getExtras();
            String variety=bundle.getString("variety");
            int amount=Integer.parseInt(bundle.getString("amount"));
            String seed=bundle.getString("seed");
            String market=bundle.getString("market");


原创粉丝点击