您好,登錄后才能下訂單哦!
第一種:第一個Activity
/** * 通過這個方法跳轉到activity2界面*/ public void gotoActivity2(View v){ //創建一個意圖 Intent intent=new Intent(this,MainActivity2.class); //第一種傳值方式 Bundle bundle=new Bundle(); bundle.putString("name","zhangsan"); bundle.putInt("age", 23); intent.putExtra("person", bundle); //啟動另一個activity startActivity(intent); }
第二個Activity
/** * Activity被創建時調用 * 可以在該方法中初始化UI組件 * 該方法調用完畢會調用onStart()方法 * */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); System.out.println("MainActivity2-onCreate()"); //獲取上一個activity傳過來的參數 Intent intent=getIntent(); Bundle bundle=intent.getBundleExtra("person"); String name= bundle.getString("name"); int age=bundle.getInt("age"); System.out.println(name+" : "+age); TextView textView=(TextView) findViewById(R.id.textView2); textView.setText("name="+name+" age="+age); }
第二種:activity1
//第二種傳值方式 intent.putExtra("name", "小白"); startActivity(intent);
activity2
Intent intent=getIntent(); String name2= intent.getStringExtra("name"); TextView textView=(TextView) findViewById(R.id.textView2); textView.setText("name2="+name2);
傳遞自定義類型(自定義類,自定義類必須序列化)
activity1
//傳遞自定義類型 Cat cat=new Cat(1, "校花", 23); intent.putExtra("cat", cat); startActivity(intent);
activity2
//第二種 String name2= intent.getStringExtra("name"); Cat cat=(Cat) intent.getSerializableExtra("cat"); TextView textView=(TextView) findViewById(R.id.textView2); textView.setText("cat="+cat.toString());
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。