用过,但现在再次用时有细节忘记的地方。便在此记录一下。
两个至多个activity之间的传值用onActivityResult。以下是两个Activity之间的传值。
第一个类的Java代码1:
LinearLayout ll = (LinearLayout) findViewById(R.id.ll10);
ll.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
intent = new Intent(NewCaseActivity.this, WriteContentActivity.class);
intent.putExtra("title", getResources().getString(R.string.input_method));
startActivityForResult(intent, 4);
}
});
第一个类的Java代码2:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode) {
case 1:
s_ccause = data.getStringExtra(Constant.INTENT_CONTENT);
break;
case 2:
s_theword = data.getStringExtra(Constant.INTENT_CONTENT);
break;
case 3:
s_content = data.getStringExtra(Constant.INTENT_CONTENT);
break;
case 4:
s_method = data.getStringExtra(Constant.INTENT_CONTENT);
break;
default:
break;
}
}
第二个类的代码:
Button btnSave = (Button) findViewById(R.id.btnSave);
btnSave.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
content = etContent.getText().toString().trim();
if(content != null && !content.equals("")){
Intent data = new Intent();
data.putExtra(Constant.INTENT_CONTENT, content);
setResult(0, data);
finish();
}
}
});
完。