兩個(gè)activity怎么發(fā)送數(shù)據(jù)并計(jì)算
在Android開發(fā)中,經(jīng)常需要在不同的activity之間發(fā)送數(shù)據(jù)。而且,有時(shí)候還需要對(duì)這些數(shù)據(jù)進(jìn)行一些計(jì)算,例如計(jì)算百分比。下面將詳細(xì)介紹如何實(shí)現(xiàn)這一功能。首先,我們需要?jiǎng)?chuàng)建兩個(gè)activity,
在Android開發(fā)中,經(jīng)常需要在不同的activity之間發(fā)送數(shù)據(jù)。而且,有時(shí)候還需要對(duì)這些數(shù)據(jù)進(jìn)行一些計(jì)算,例如計(jì)算百分比。下面將詳細(xì)介紹如何實(shí)現(xiàn)這一功能。
首先,我們需要?jiǎng)?chuàng)建兩個(gè)activity,分別為ActivityA和ActivityB。
在ActivityA中,我們可以通過Intent來傳遞數(shù)據(jù)到ActivityB。具體操作如下:
1. 在ActivityA中,創(chuàng)建一個(gè)Button,并設(shè)置一個(gè)點(diǎn)擊事件。
2. 在點(diǎn)擊事件中,創(chuàng)建一個(gè)Intent對(duì)象,并使用putExtra方法來添加數(shù)據(jù)。例如,我們可以將一個(gè)整數(shù)值傳遞給ActivityB:intent.putExtra("data", 10)。
3. 最后,通過startActivity方法啟動(dòng)ActivityB。
接下來,在ActivityB中,我們需要接收ActivityA傳遞過來的數(shù)據(jù),并進(jìn)行計(jì)算。具體操作如下:
1. 在ActivityB中的onCreate方法中,使用getIntent方法獲取傳遞過來的Intent對(duì)象。
2. 使用getIntExtra方法獲取ActivityA傳遞過來的數(shù)據(jù)。例如:int data getIntent().getIntExtra("data", 0),其中0為默認(rèn)值,當(dāng)沒有傳遞數(shù)據(jù)時(shí)使用該值。
3. 對(duì)接收到的數(shù)據(jù)進(jìn)行計(jì)算。例如,我們可以計(jì)算百分比:int percentage (data * 100) / 1000。
最后,我們可以將計(jì)算得到的結(jié)果顯示在ActivityB中。例如,可以通過TextView來展示百分比的結(jié)果。
通過以上步驟,我們就成功實(shí)現(xiàn)了在兩個(gè)activity之間發(fā)送數(shù)據(jù)并計(jì)算百分比的功能。
總結(jié):
本文介紹了在Android開發(fā)中如何在兩個(gè)activity之間發(fā)送數(shù)據(jù),并利用這些數(shù)據(jù)進(jìn)行計(jì)算百分比的方法。通過Intent的傳遞和getExtra的獲取,我們可以輕松地在activity之間傳遞數(shù)據(jù)。同時(shí),我們還學(xué)習(xí)了如何進(jìn)行簡(jiǎn)單的計(jì)算,例如計(jì)算百分比。這些技巧在實(shí)際開發(fā)中非常實(shí)用,希望對(duì)讀者能有所幫助。
參考代碼:
:
```
public class ActivityA extends AppCompatActivity {
private Button btnSendData;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(_a);
btnSendData findViewById(_send_data);
(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent new Intent(, );
intent.putExtra("data", 10);
startActivity(intent);
}
});
}
}
```
:
```
public class ActivityB extends AppCompatActivity {
private TextView tvResult;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(_b);
tvResult findViewById(_result);
Intent intent getIntent();
int data ("data", 0);
int percentage (data * 100) / 1000;
("百分比結(jié)果:" percentage "%");
}
}
```