4

Androidでどの親アクティビティが子アクティビティを呼び出すかを知る方法は?

3 つのアクティビティ A、B、C があるとします。A と B は親アクティビティです。C は子アクティビティです。つまり、C は A からでも B からでも開始できます。

では、どの親アクティビティが子アクティビティを開始させるかを知るにはどうすればよいでしょうか?

問題は、その親インテントに従って戻るボタンを設定する必要があることです。そのためには、getSupportParentActivityIntent()メソッドをオーバーライドしたいので、親アクティビティを再開するにはインテント オブジェクトが必要です。

Androidサイトのメソッドの説明は次のとおりです

getSupportParentActivityIntent() メソッドを正しくオーバーライドするように親アクティビティを取得するにはどうすればよいですか?

ありがとう。

4

2 に答える 2

0

あなたの子供の活動では、次のように使用します

@Override
public Intent getSupportParentActivityIntent() {
    String from = getIntent().getExtras().getString("from");
    Intent newIntent = null;
    if(from.equals("MAIN")){
        newIntent = new Intent(this, MainActivity.class);
    }else if(from.equals("FAV")){
        newIntent = new Intent(this, FavoriteActivity.class);
    }
    ...
    return newIntent;
}

その前に、FavoriteActivity などのソース アクティビティごとに追加の値を設定する必要があります。

i.putExtra("from", "FAV");

および MainActivity の使用

i.putExtra("from", "MAIN");
于 2015-05-25T14:28:11.533 に答える