使用Intent操作可以完成兩個Activity之間的跳轉,有時候也相應的需要在兩個跳轉活動之間傳遞數(shù)據(jù),這篇就詳細的介紹一些在Android開發(fā)中一些基礎的活動跳轉時傳遞數(shù)據(jù)的方法
調(diào)用PutExtra()方法
由于Activity之間的數(shù)據(jù)傳遞有許多不同種類型,所以在Inten類中提供了多個重載的putExtra()方法
具體用法如下:
通過putExtra()方法將傳遞的數(shù)據(jù)存儲在Intent中
//創(chuàng)建一個意圖并構造跳轉對象
Intent intent=new Intent(this,SecondActivity.class);
//調(diào)用putExtra()方法
intent.putExtra("name","李華");//姓名
intent.putExtra("age",18);//性別
//啟動SecondActivity活動
startActivity(intent);
?通過getXxxExtra()方法將傳遞的數(shù)據(jù)獲取
//獲取意圖對象
Intent intent=getIntent();
//獲取姓名
String name=intent.getStringExtra("name");
//獲取年齡
String name=intent.getIntExtra("age",0);
這樣就完成了第一種Activity之間數(shù)據(jù)傳遞的方法~?
這里解釋一下第三行代碼(大佬跳過~):
//獲取年齡
String name=intent.getIntExtra("age",0);
第二個參數(shù)設置為0,為什么呢?這里可以看一下getIntExtra()方法的參數(shù)定義
getIntExtra(String name,int defaultValue){
//
}
第一個參數(shù)是鍵值,第二個參數(shù)代表默認取值,說明只有當putExtra()中沒有傳入age的值時,age才會賦予的值。
利用Bundle類傳遞數(shù)據(jù)
與map接口類似,都是通過鍵值對的方式來保存數(shù)據(jù)
示例如下:
//創(chuàng)建一個意圖
Intent intent=new Intent();
//設置要跳轉的Activity
intent.setClass(this,SecondActivity.class);
//創(chuàng)建一個Bundle對象
Bundle bundle=new Bundle();
//調(diào)用Bundle類中的putString()方法封裝信息
bundle.putString("name","李華");//將姓名信息封裝到Bundle中
bundle.putString("age","18");//將年齡信息封裝到Bundle中
//將Bundle對象封裝到Intent對象中
intent.putExtras(bundle);
//啟動Avtivity活動
startActivity(intent);
在SecondActivity中獲取數(shù)據(jù)代碼如下
//獲取Bundle對象
Bundle bundle=getIntent().getExtras();
//獲取數(shù)據(jù)
String name=bundle.getString("name");
String age=bundle.getString("age");//注意此時age的類型不是int型,需要自行轉換
這樣就也完成了第二種在兩個Activity跳轉之間的數(shù)據(jù)傳遞的方法~文章來源:http://www.zghlxwxcb.cn/news/detail-401155.html
覺得有用的話點個小贊再走唄~文章來源地址http://www.zghlxwxcb.cn/news/detail-401155.html
到了這里,關于Android Studio中如何在Activity跳轉之間傳遞數(shù)據(jù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!