認証を必要とする小さなアプリを構築しています。私の主なアクティビティには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
}
}