我正在构建一个需要身份验证的小应用程序。在我的主要活动中,我有一个Parcelable
名为“user”的类,其中包含用户的用户名和密码,当用户单击按钮时,它会启动一个传递该用户类的新活动。它就像一个魅力,在子活动中,用户填写表单进行身份验证,然后当用户按下后退按钮时,我想将“用户”类发送回我的主要活动。
有可能这样做吗?
我正在构建一个需要身份验证的小应用程序。在我的主要活动中,我有一个Parcelable
名为“user”的类,其中包含用户的用户名和密码,当用户单击按钮时,它会启动一个传递该用户类的新活动。它就像一个魅力,在子活动中,用户填写表单进行身份验证,然后当用户按下后退按钮时,我想将“用户”类发送回我的主要活动。
有可能这样做吗?
开始您的孩子活动:
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
}
}