Android Intent傳值反饋,向後傳遞,要求返回的傳值
阿新 • • 發佈:2019-01-28
很簡單
1.
傳值跳轉到第二個activity
Intent intent=new Intent(MainActivity.this,TwoActivity.class);
startActivityForResult(intent,1);
2.在第二個activity接收
Intent intent = getIntent();
intent.putExtra("text", edit.getText().toString());
setResult(1, intent);
finish();
3.第二個activity關閉之後,再在第一個activity接收,上一個activity傳遞過來的資料
在第一個activity中,也就是要求intent返回值的activity中重寫一個方法
第三引數即使帶有引數返回的intent
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode==1&&resultCode==1){
ed.setText(data.getStringExtra("text"));
}
}
intent傳遞實體類
實體類Tc實現
Serializable介面
Tc tc = adapter.getItem(i);
Intent intent = new Intent(this, TCXQActivity.class );
Bundle bundle = new Bundle();
bundle.putSerializable("tc", tc);
intent.putExtras(bundle);
startActivityForResult(intent, 1);
//第二個activity取出來
Intent intent=getIntent();
Bundle bundle= intent.getExtras();
Tc tc= (Tc) bundle.getSerializable("tc");