• Android两个Activity之间的数据交换


    1. 不带数据

     @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            next=(Button)findViewById(R.id.next);
            next.setOnClickListener(new Button.OnClickListener() {
                
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    Intent intent=new Intent();
                    intent.setClass(MainActivity.this, Second.class);
                    startActivity(intent);    
                }
            });
        }

    2. 第一个Activity中数据传给第二个Activity

    发送端

     protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            next=(Button)findViewById(R.id.next);
            content=(EditText)findViewById(R.id.content);
            next.setOnClickListener(new Button.OnClickListener() {
                
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    String name=content.getText().toString();
                    Intent intent=new Intent();
                    intent.putExtra("name", name);
                    //Toast.makeText(MainActivity.this, name, Toast.LENGTH_SHORT).show();
                    intent.setClass(MainActivity.this, Second.class);
                    startActivity(intent);    
                }
            });
        }

    接收端

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_second);
            name=(TextView)findViewById(R.id.name);
            age=(EditText)findViewById(R.id.age);
            back=(Button)findViewById(R.id.back);
            
            Intent intent=getIntent();
            String na=intent.getStringExtra("name");
            //Toast.makeText(Second.this, na, Toast.LENGTH_SHORT).show();
            name.setText(na);
        }

    3. 第二个Activity把数据传给第一个Activity

    第一个Activity

     protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            next=(Button)findViewById(R.id.next);
            content=(EditText)findViewById(R.id.content);
            next.setOnClickListener(new Button.OnClickListener() {
                
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    String name=content.getText().toString();
                    Intent intent=new Intent();
                    intent.putExtra("name", name);
                    //Toast.makeText(MainActivity.this, name, Toast.LENGTH_SHORT).show();
                    intent.setClass(MainActivity.this, Second.class);
                    startActivityForResult(intent, RESULT_CODE);    
                }
            });
        }
    
    
        @Override
        protected void onActivityResult(int requestCode, int resultCode, Intent data) {
            // TODO Auto-generated method stub
            super.onActivityResult(requestCode, resultCode, data);
            if(requestCode==RESULT_CODE){
                if(resultCode==Second.RESULT_CODE){
                    Bundle bundle=data.getExtras();
                    String con=bundle.getString("age");
                    content.setText(con);
                }
            }
            
        }

    第二个Activity

    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_second);
            name=(TextView)findViewById(R.id.name);
            age=(EditText)findViewById(R.id.age);
            back=(Button)findViewById(R.id.back);
            back.setOnClickListener(new Button.OnClickListener() {
                
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    String a=age.getText().toString();
                    Intent intent=new Intent();
                    Bundle bundle=new Bundle();
                    bundle.putString("age", a);
                    intent.putExtras(bundle);
                    setResult(RESULT_CODE, intent);
                    finish();
                }
            });
            
            Intent intent=getIntent();
            String na=intent.getStringExtra("name");
            //Toast.makeText(Second.this, na, Toast.LENGTH_SHORT).show();
            name.setText(na);
        }
  • 相关阅读:
    -F, --flush-logs
    perl 处理文本
    zookeeer 集群和伪集群模式
    匿名函数和闭包
    perl 读取cookie
    看医疗行业如何建立信息化战略决策
    浅析职业安全感——北漂18年(63)
    perl 面向对象 new方法
    如何去掉MyEclipse中的MyEclipse Derby
    Not enough space svn: zlib (uncompress): buffer error: Decompression of svndiff data failed
  • 原文地址:https://www.cnblogs.com/wicrecend/p/4868594.html
Copyright © 2020-2023  润新知