我正在构建一个需要验证身份的小应用程序。在我的主要活动中,我有一个名为“user”的Parcelable
类,其中包含用户的用户名和密码,当用户单击按钮时,它会启动传递该用户类的新活动。它就像一个魅力,在用户填充表单进行身份验证的子活动中,然后当用户按下后退按钮时,我想将“用户”类发送回我的主要活动。
有可能吗?
答案 0 :(得分:12)
通过以下方式开始您的孩子活动:
startActivityForResult(startIntent, 1);
在您的子活动中,拦截后退按钮并附加您的数据:
@Override
public void onBackPressed() {
Intent data = new Intent();
data.putExtra("key", yourDataHere);
setResult(Activity.RESULT_OK, data);
super.onBackPressed();
}
在onActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 1 && resultCode == Activity.RESULT_OK){
DataType yourData = (DataType) data.getParcelableExtra("key");
//Do whatever you want with yourData
}
}