天天看点

Activity之间的数据传输

1.通信方式:

Activity之间的数据传输

2.通过intent传递:

//传数据
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
                intent.putExtra("name", "ysl");
                intent.putExtra("age", 22);
                startActivity(intent);

//取数据
String name = getIntent().getStringExtra("name");
        int age = getIntent().getIntExtra("age", 0);
           

3.通过bundle传输:

//传数据
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
                Bundle bundle = new Bundle();
                bundle.putString("name1", "Mjj");
                bundle.putInt("age1", 18);
                intent.putExtras(bundle);

                startActivity(intent);

//取数据
String name1 = getIntent().getStringExtra("name1");
        int age1 = getIntent().getIntExtra("age1", 0);
           

4.区别:

其实intent的传递底层用的还是bundle的传递方法。

看intent的源码:

Activity之间的数据传输
Activity之间的数据传输

Bundle可以传输的类型有哪些:

Activity之间的数据传输

包括的类型特别多。可以根据自己的需求使用。