iT邦幫忙

2024 iThome 鐵人賽

DAY 17
0

昨天我們探討了如何使用 Intent 來實現 Activity 之間的跳轉。今天,我們將進一步探討如何在多個 Activity 之間傳遞資料,這是 Android 開發中非常常見的需求。特別是當你需要從一個 Activity 傳遞資料到另一個 Activity 時,putExtra 方法是最常用的工具。

1. 基本概念

Intent 是 Android 中用來啟動一個新的 Activity 的工具,但它不僅僅是用來啟動 Activity,它還可以攜帶額外的資料供新的 Activity 使用。這些資料可以是基本類型的數據(如整數、字串),也可以是更複雜的對象。

2. 使用 putExtra 傳遞資料

在第一個 Activity 中,我們可以使用 putExtra 方法將資料附加到 Intent 中。假設我們有一個使用者的名字和年齡需要傳遞到下一個 Activity,程式碼如下:

Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("USERNAME", "JohnDoe");
intent.putExtra("AGE", 25);
startActivity(intent);

在上面的例子中,我們創建了一個 Intent,並通過 putExtra 方法將使用者的名字和年齡附加到這個 Intent 上。這樣,當我們啟動 SecondActivity 時,這些資料就隨著 Intent 被傳遞過去了。

3. 在新的 Activity 中接收資料

當新的 Activity 被啟動後,我們可以使用 getIntent().getStringExtra() 或 getIntent().getIntExtra() 等方法來接收傳遞過來的資料。繼續上面的例子,以下是如何在 SecondActivity 中接收這些資料的示範:

Intent intent = getIntent();
String username = intent.getStringExtra("USERNAME");
int age = intent.getIntExtra("AGE", 0);

在這段程式碼中,我們使用 getIntent() 方法獲取傳遞過來的 Intent,然後通過 getStringExtra 和 getIntExtra 方法提取出 USERNAME 和 AGE 這兩個資料。注意 getIntExtra 方法中,我們提供了一個預設值 0,以防止 AGE 的值為空時出現錯誤。

結論

使用 putExtra 和 getIntent() 是 Android 中 Activity 之間傳遞資料的標準方法。這種方法靈活且易於使用,適用於大多數開發場景。在進行開發時,理解這些基本操作將有助於你更有效地管理應用內的資料流動。
希望這篇文章能讓你對 Activity 之間的資料傳遞有更深入的了解,並能在未來的開發中熟練應用。接下來,我們會進一步探討 Android 開發中的更多關鍵技巧。


上一篇
# DAY16:深入探討 Intent 的使用
下一篇
# DAY18 深入探討正規表示法(Regular Expressions)
系列文
「淺入 Android Studio 開發環境」—— 工具與插件的高效使用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言