Bundle可能過put****()方法添加各種類型的數據,Intent也可以通過putExtras(Bundle)將數據添加進去,然後通過startActivity()跳到下一下Activity的時候就把數據也傳到下一個Activity了。
- package com.intent;
-
- import Android.app.Activity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
-
- public class TestIntentActivity extends Activity {
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- Button button = (Button)this.findViewById(R.id.button);
- button.setOnClickListener(new OnClickListener() {
-
- public void onClick(View v) {
- Intent intent = new Intent(TestIntentActivity.this,SecondActivity.class);
- Bundle bundle = new Bundle();
- bundle.putString("key_name", "name");
- bundle.putString("key_age", "age");
- intent.putExtras(bundle);
- startActivity(intent);
- }
- });
- }
- }
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical" >
-
- <Button
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/intent"
- android:id="@+id/button" />
-
- </LinearLayout>
- package com.intent;
-
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.TextView;
-
- public class SecondActivity extends Activity{
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.second);
- TextView tv1 = (TextView)this.findViewById(R.id.tv1);
- TextView tv2 = (TextView)this.findViewById(R.id.tv2);
-
- Bundle bundle = this.getIntent().getExtras();
- tv1.setText(bundle.getString("key_name"));
- tv2.setText(bundle.getString("key_age"));
- }
-
- }
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical" >
-
- <TextView android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:id="@+id/tv1"/>
- <TextView android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:id="@+id/tv2"/>
- </LinearLayout>
最後將新的Activity添加到manifest.xml裡面就可以了
更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11