2015-04-18 18 views
5

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

enter image description here

+1

Hai provato 'getActionBar(). SetDisplayHomeAsUpEnabled (false)'? –

risposta

11

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;

+0

Ho provato ad aggiungerlo in ResultActivity dopo setContentView ma sto ottenendo getActionBar(); come null. Quindi, lancia NullPointerException. Che cosa sto facendo di sbagliato? –

+0

Ho appena modificato la mia risposta, provalo. –

+0

Anche in onCreateOptionsMenu ottengo actionBar come null, quindi se {} non viene eseguito. Quindi la freccia è ancora visibile. –

2
getActionBar().setDisplayHomeAsUpEnabled(false); 
+0

Ho provato ad aggiungerlo in ResultActivity dopo setContentView ma sto ottenendo getActionBar(); come null. Quindi, lancia NullPointerException. Che cosa sto facendo di sbagliato? –

+0

stai usando la lib di supporto? Quindi geSupportActionBar è la strada da percorrere –

0

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.

Problemi correlati