Ho creato due attività vuote in Android Studio e sembra che aggiunga di nuovo la freccia di default. Il mio MainActivity
è padre di ResultActivity
. Voglio mantenere questa gerarchia ma voglio sbarazzarmi della freccia indietro.Android: Rimuovi attività indietro Arrow
risposta
Se siete a livello di API 14 o superiore e non si utilizza ActionBarSherlock, questo codice in onCreateOptionsMenu
dovrebbe disabilitare il pulsante Su;
ActionBar actionBar = getActionBar();
if (actionBar != null) {
actionBar.setHomeButtonEnabled(false); // Disable the button
actionBar.setDisplayHomeAsUpEnabled(false); // Remove the left caret
actionBar.setDisplayShowHomeEnabled(false); // Remove the icon
}
Se si utilizza una lib di supporto come ActionbarSherlock, quindi utilizzare;
Ho provato ad aggiungerlo in ResultActivity dopo setContentView ma sto ottenendo getActionBar(); come null. Quindi, lancia NullPointerException. Che cosa sto facendo di sbagliato? –
Ho appena modificato la mia risposta, provalo. –
Anche in onCreateOptionsMenu ottengo actionBar come null, quindi se {} non viene eseguito. Quindi la freccia è ancora visibile. –
getActionBar().setDisplayHomeAsUpEnabled(false);
Ho provato ad aggiungerlo in ResultActivity dopo setContentView ma sto ottenendo getActionBar(); come null. Quindi, lancia NullPointerException. Che cosa sto facendo di sbagliato? –
stai usando la lib di supporto? Quindi geSupportActionBar è la strada da percorrere –
So che questa è una vecchia domanda, ma ora mi sono imbattuto in questo e ho dovuto prendere qualche azione aggiuntiva per rimuovere la freccia indietro.
Quindi, oltre a questo pezzo di codice come indicato la risposta corretta
getActionBar().setDisplayHomeAsUpEnabled(false);
sarà anche necessario per rimuovere la relazione padre-figlio nel file AndroidManifest.xml. La tua attività non dovrebbe avere la seguente voce
android:parentActivityName
Potrebbe aiutare qualcun altro che si imbatte in questo.
Hai provato 'getActionBar(). SetDisplayHomeAsUpEnabled (false)'? –