Intent向下一个活动传递数据putExtra

转载自:http://blog.csdn.net/qq_16758741/article/details/52168636

1.新建项目<MyApplication>
2.在layout目录下,在first_layout.xml中添加按钮Button1
3.在layout目录下,新建second_layout.xml,并添加按钮Button2
4.在Java目录下,在FirstA.java中,加载布局,  修改活动onCreate方法中按钮的点击监听事件
5.在Java目录下,新建FirstB.java,并加载布局,  目标活动MyActivity2接受来自MyActivity的数据,修改onCreate方法
6.在AndroidManifest.xml下,注册2个活动,并将FirstA作为主活动
代码如下:

layout——>first_layout.xml(2)

<Button
    android:id="@+id/button1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="myButton1" />

layout——>second_layout.xml(3)

<Button
    android:id="@+id/button2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="myButton2" />
java——>FirstA .java(4)

public class FirstA extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.first_layout);

        Button button1=(Button)findViewById(R.id.button1);
        button1.setOnClickListener(new View.OnClickListener() {

//            @Override
//            public void onClick(View view) {
//                //跳转到活动MyActivity2
//                //第一个参数:上下文,第二个参数:目标活动类
//                Intent intent = new Intent(FirstA.this,FirstB.class);
//                //启动活动
//                startActivity(intent);
//            }

            public void onClick(View view) {
                //跳转到活动MyActivity2
                //第一个参数:上下文,第二个参数:目标活动类
                Intent intent = new Intent(FirstA.this,FirstB.class); //显式Intent

                //向活动MyActivity2传递数据,使用Intent的putExtra方法传递数据,其中第一个参数是key,第二个参数是value。
                intent.putExtra("info", "我来自活动1");
                //启动活动
                startActivity(intent);
            }

        });
    }
}

 
 java——>FirstB .java(5) 
 

public class FirstB extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //隐藏标题栏
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        //加载自定义布局文件 activity2_my.xml
        setContentView(R.layout.second_layout);

        //接受活动1传递来的数据
        Intent intent = getIntent();
        //使用Intent的getXXXExtra方法接受传递来的数据,其中XXX根据传递的数据类型进行确定的。
        String info = intent.getStringExtra("info");
        Toast.makeText(getApplicationContext(), info, Toast.LENGTH_SHORT).show();
    }
}
manifests——> AndroidManifest.xml(6)  

<activity android:name=".FirstA"
    android:label="@string/app_name">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
<activity android:name=".FirstB"></activity>


本文转自多处,如有侵权请告知,本人将立即删除本文!

猜你喜欢

转载自blog.csdn.net/qq_40742755/article/details/78489992
今日推荐