2015-04-20 15 views
7

Non riesco a trovare un tutorial sull'aggiunta di questo pulsante nella barra delle azioni in Material Design.Come creare un pulsante Indietro in Material Design

example image

Come posso aggiungere questo nella barra azione su Lollipop?

+1

prega di inviare alcuni esempi di codice per dimostrare ciò che hai provato :) –

+0

il problema è, non riesco a trovare nulla per questo nella barra di azione con lecca-lecca! – masterphp

+0

stai usando la libreria di supporto? Che cosa dalla tua attività è estesa? – Harry

risposta

12

Material Design Tutorial Questo vi darà breve idea di come implementare app materiali.

Se si utilizza ActionBarActivity con AppCompat Theme uso:

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

Inoltre potrebbe essere necessario chiamare in setHomeButtonEnabled(true) stesso modo. Essa sarà simile a questa:

enter image description here

+0

Non implementare il cassetto di navigazione se non ne hai bisogno. Basta usare sopra la riga di codice nell'attività principale. – Harry

+0

grazie, accettato e ha funzionato ora con: 'getSupportActionBar(). SetDisplayHomeAsUpEnabled (true);' – masterphp

17

provare questo

in su creare:

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

nella classe di attività (supponendo che si desidera chiudere questa attività)

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

avete qualche esempio su questo? lo provo ma Errore: 'Purtroppo il programma si è fermato' dammi.tnx – masterphp

+0

puoi incollare il tracelog da logcat –

+0

'masterphp' sta cercando di implementare il material design. Come può essere 'getActionBar()'. Deve essere 'getSupportActionBar()'. @TomerShemesh – Pooja

1


In primo luogo, è necessario utilizzare Theme di Material Design, e il Theme supporta ActionBar, come Theme.AppCompat.Light, Theme.AppCompat.Light.DarkActionBar.
Secondo, chiamare ActionBar.setDisplayHomeAsUpEnabled(true); o ToolBar.setDisplayHomeAsUpEnabled(true);, quindi l'icona Return mostrerebbe.

3

nei tuoi onCreate aggiungere queste righe

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
getSupportActionBar().setHomeButtonEnabled(true); 

per la navigazione di nuovo è necessario definire di nuovo la navigazione actiity sul AndroidMnifest.xml

<activity 
android:name=".CurrentActivity" 
android:label="@string/app_name" 
android:parentActivityName=".BackActivity"> 
</activity> 
2

getSupportActionBar().setDisplayHomeAsUpEnabled(true); può produrre eccezione nullpointer, onCreate() dovrebbe essere così.

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setupActionBar(); 
} 

/** 
* Set up the {@link android.app.ActionBar}, if the API is available. 
*/ 
private void setupActionBar() { 
    ActionBar actionBar = getSupportActionBar(); 
    if (actionBar != null) { 
     // Show the Up button in the action bar. 
     actionBar.setDisplayHomeAsUpEnabled(true); 
    } 
} 
Problemi correlati