6

1 つの子アクティビティが 2 つの親アクティビティを持つことができるナビゲーション システムを実装できるかどうかを調べたいと思います。基本的に、ユーザーがお気に入りになる可能性のあるコンテンツのストリームがあります。ストリーム アクティビティと「お気に入り」コンテンツを表示するアクティビティの両方から、保存されたアイテムをメールで共有できます。ナビゲーションのためだけにクラスを複製することは避けたいです。

4

1 に答える 1

11

はい、可能です。ただし、親が 2 つ以上の場合、ここで説明するように Up Navigationの実装に依存することはできません: Up Navigation の提供

したがって、2 つのオプションが残されています。

1-戻るボタンの動作を使用する

finish()またはを呼び出すだけでこれを行うことができonBackPressed()ます。このような:onOptionsItemSelected(MenuItem item)android.R.id.home

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case android.R.id.home:
        finish();
        return true;
}

2- アプリの最初のアクティビティに戻る

次のように、ユーザーをアプリの開始位置から最初のアクティビティに戻します。

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case android.R.id.home:
        Intent backIntent = new Intent(this, YOUR_FIRST_ACTIVITY.class);
        backIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(backIntent);
        return true;
}

ちなみに、この質問はこの質問の重複の可能性があります

于 2013-11-22T13:12:00.393 に答える