2 回答

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超8個(gè)贊
將數(shù)據(jù)從一個(gè)活動(dòng)傳遞到第二個(gè)活動(dòng)的多種方法,例如使用Intent將數(shù)據(jù)從一個(gè)活動(dòng)傳遞到另一個(gè)活動(dòng),另一種方法使用sharedpreference來(lái)存儲(chǔ)數(shù)據(jù)并將其獲取到任何地方,第三種方法將數(shù)據(jù)存儲(chǔ)在靜態(tài)變量中
使用意圖傳遞數(shù)據(jù)
MainActivity.java
nameEt = (EditText) findViewById(R.id.name_et);
mobileEt = (EditText) findViewById(R.id.mobile_et);
submitBtn = (Button) findViewById(R.id.submit_btn);
submitBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
name=nameEt.getText().toString();
mobile_number=mobileEt.getText().toString();
Intent intent=new Intent(FirstActivity.this,SecondActivity.class);
intent.putExtra("name",name);
intent.putExtra("mobile",mobile_number);
startActivity(intent);
}
});
第二活動(dòng)
nameTv = (TextView) findViewById(R.id.name_tv);
mobileTv = (TextView) findViewById(R.id.mobile_tv);
String name,mobile_number;
//get Intent data
name=getIntent().getStringExtra("name");
mobile_number=getIntent().getStringExtra("mobile");
nameTv.setText(name);
mobileTv.setText(mobile_number);
使用靜態(tài)變量
MainActivity.java 公共靜態(tài)字符串名稱;公共靜態(tài)字符串 mobile_number;
nameEt = (EditText) findViewById(R.id.name_et);
mobileEt = (EditText) findViewById(R.id.mobile_et);
submitBtn = (Button) findViewById(R.id.submit_btn);
submitBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
name=nameEt.getText().toString();
mobile_number=mobileEt.getText().toString();
Intent intent=new Intent(FirstActivity.this,SecondActivity.class);
startActivity(intent);
}
});
SecondActivity.java
nameTv = (TextView) findViewById(R.id.name_tv);
mobileTv = (TextView) findViewById(R.id.mobile_tv);
nameTv.setText(MainActivity.name);
mobileTv .setText(MainActivity.mobile_number);

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊
使用意圖將數(shù)據(jù)從一個(gè)活動(dòng)傳遞到另一個(gè)活動(dòng),或者如果您可以使用片段,則使用捆綁包。按照這些教程 - https://developer.android.com/training/basics/firstapp/starting-activity#java
你必須改變代碼。
Intent intent = new Intent(MainActivity.this,SecondActivity.class);
intent.putStringExtra("key1","editetextvalue")
intent.putStringExtra("key2","editetextvalue2")
startActivity(intent);
and get value in a second activity.
Intent intent = getIntent();
String key = intent.getStringExtra("key1")
please remember if you pass these key exact same get key other not get
添加回答
舉報(bào)