Activity跳轉與傳值,主要是通過Intent類來串連多個Activity,通過Bundle類來傳遞資料。
範例程式碼如下:
1.1、使用intent.putExtra()方法賦值
1 public class menu extends Activity { 2 3 @Override 4 public void onCreate(Bundle savedInstanceState) { 5 super.onCreate(savedInstanceState); 6 7 setContentView(R.layout.menu); 8 9 ...10 11 // Button212 Button Btn2 = (Button) findViewById(R.id.button2);13 14 Btn2.setOnClickListener(new OnClickListener() {15 16 @Override17 public void onClick(View arg0) {18 19 Intent intent = new Intent(menu.this, detail.class);20 intent.putExtra("flg", "list");21 startActivity(intent);22 }23 });24 25 ...26 27 28 }
1.2、在另一個頁面擷取傳值
1 Bundle bundle = this.getIntent().getExtras();2 String flg = bundle.getString("flg");3 if (flg.equals("list")) {4 ...5 }
2.1、如果要傳遞的是一組資料的話,就要藉助Bundle對象來傳遞資料了。
1 Bundle bundle = new Bundle();2 3 bundle.putString("Name", "Jacker");4 bundle.putString("Phone", "13590010101");5 bundle.putBoolean("flg", true);6 7 intent.putExtras(bundle);
2.2擷取傳值的方法相同
1 Bundle bundle = this.getIntent().getExtras();2 3 String name = bundle.getString("Name");4 String phone = bundle.getString("Phone");5 boolean flg = bundle.getBoolean("flg");