Android Activity之間引數傳遞

2021-07-06 06:36:38 字數 1650 閱讀 6428

方式1-簡單資料:
引數傳遞
intent intent =new intent(mainactivity.this,mainactivity2.class

);

intent.putextra("name", "小明");

startactivity(intent);

引數獲取
string parame1 = getintent().getstringextra("

name

");

方式2-bundle:
引數傳遞
intent intent =new intent(mainactivity.this,mainactivity2.class

);bundle bundle=new

bundle();

bundle.putstring("name", "小明");

bundle.putint("age", 20);
intent.putextras(bundle);startactivity(intent);

引數獲取
bundle bundle = getintent().getextras();

string name = bundle.getstring("name");

int name = bundle.getint("age");
方式3-物件:
引數傳遞
intent intent =new intent(mainactivity.this,mainactivity2.class

);

user user = new user("小明",20);//user實現serializable
intent.putextra("user", user);

startactivity(intent);

引數獲取
user parame1 = (

user

)getintent().getserializableextra("user");

方式4-傳遞並獲取返回的引數

傳遞引數
intent intent =new intent(mainactivity.this,mainactivity2.class

);

intent.putextra("name", "小明");
startactivityforresult(intent, 1);

處理返回引數
@override

protected void onactivityresult(int arg0, int arg1, intent arg2)

返回引數
intent intent =new intent();
intent.putextra("data", "你好");
setresult(1, intent);
finish();

android activity啟動模式

1.標準模式 standrad 沒啟動乙個activity,都會建立乙個activity例項,放入回退棧的內部 2.單頂模式 singletop 當啟動launchmode是 singletop的時候,系統會先判斷棧頂是不是要啟動的那個activity例項,如果是,則不會建立新的例項,直接讓棧頂直接...

Android Activity啟動模式

在androidmanifest.xml中配置 android name mainactivity android launchmode standard 有以下四種 standard 預設模式,每次通過intent啟動activity時都會建立乙個新的activity例項,並放入任務棧中。sing...

android Activity切換動畫

今天準備比賽的時候 遇到了這個問題。查了些資料總結了下。主要是通過 android theme 標籤來實現 android theme style 那麼就需要自己寫style風格檔案 如下 這裡之所以寫成2style個是為了解耦然後自己寫下anim anim enter anim anim exit...