Android Up-Taste funktioniert nicht

Ich versuche, die Aktionen, die ausgeführt werden müssen, wenn die Aufwärtsschaltfläche auf der Aktionsleiste gedrückt wird, manuell auszuführen, aber aus irgendeinem Grund passiert nichts, wenn ich darauf drücke.

hier ist mein Code:

public class ActivityOne extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_activity_one);
        Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar_actionbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        Button button = (Button)findViewById(R.id.btn1);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                openActivityTwo();
            }
        });
        Button button2 = (Button)findViewById(R.id.btn2);
        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                openActivityThree();
            }
        });
    }


    void openActivityTwo(){
        Intent intent = new Intent(this, ActivityTwo.class);
        startActivity(intent);
    }

    void openActivityThree(){
        Intent intent = new Intent(this, ActivityThree.class);
        startActivity(intent);
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_activity_one, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        else if(id == R.id.homeAsUp){
            Log.i("","Up is pressed");
            finish();
            return true;
        }

        return super.onOptionsItemSelected(item);
    }
}

Ich verstehe, dass ich explizit eine übergeordnete Aktivität für die Aktivität zuweisen mussIch möchte die Navigation in der Manifest-Datei implementieren, aber das Problem ist, dass diese Aktivität mehrere Eltern hat, also dachte ich, ich rufe dasfinish() -Methode, wenn die Aufwärtstaste bei dieser Aktivität gedrückt wird, ist der bessere Ansatz.

Ich habe bereits beide ausprobiertid == R.id.home undid == R.id.homeAsUp und beide funktionieren nicht. Ich weiß nicht, ob es daran liegt, dass ich @ benutAppCompactActivity oder was Bitte helfen Sie

Antworten auf die Frage(4)

Ihre Antwort auf die Frage