2015-04-20 17 views
7

Nie mogę znaleźć samouczka o dodawaniu tego przycisku na pasku czynności w Material Design.Tworzenie przycisku wstecznego w materiale Projektowanie

example image

Jak mogę dodać to na pasku akcji na Lollipop?

+1

proszę pisać przykładowy kod do wykazania czego próbowałem :) –

+0

jest problem, nie mogę znaleźć nic na to w pasku akcji z lizaka! – masterphp

+0

Czy korzystasz z biblioteki pomocy? Co z Twojej działalności zostało przedłużone? – Harry

Odpowiedz

12

Material Design Tutorial To daje krótki pojęcia jak do wdrożenia aplikacji materiałowej.

Jeśli używasz ActionBarActivity z AppCompat Theme użytku:

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

Również może trzeba zadzwonić setHomeButtonEnabled(true) w ten sam sposób. To będzie wyglądać następująco:

enter image description here

+0

Nie należy implementować szuflady nawigacji, jeśli jej nie potrzebujesz. Po prostu użyj powyższej linii kodu w głównym działaniu. – Harry

+0

dziękuję, akceptowane i działało teraz z: 'getSupportActionBar(). SetDisplayHomeAsUpEnabled (true);' – masterphp

17

spróbować tej

w sprawie stworzenia:

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

w swojej klasie aktywności (zakładając, że chcesz zamknąć tę działalność)

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

czy masz jakiś przykład na ten temat? próbuję go, ale Błąd: 'Niestety program zatrzymał się' give me.tnx – masterphp

+0

czy możesz wkleić tracelog z logcat –

+0

'masterphp' próbuje zaimplementować Material design. Jak to może być 'getActionBar()'. Musi to być 'getSupportActionBar()'. @TomerShemesh – Pooja

1


First, trzeba użyć Theme z Material Design i Theme obsługuje ActionBar, jak Theme.AppCompat.Light, Theme.AppCompat.Light.DarkActionBar.
Po drugie, zadzwoń pod numer ActionBar.setDisplayHomeAsUpEnabled(true); lub ToolBar.setDisplayHomeAsUpEnabled(true);, a następnie wyświetli się ikona Return.

3

w swoim onCreate dodać te linie

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

do tyłu nawigacji trzeba określić powrotem nawigację actiity na AndroidMnifest.xml

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

getSupportActionBar().setDisplayHomeAsUpEnabled(true); może dawać NullPointer wyjątku onCreate() powinno być tak.

@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); 
    } 
} 
Powiązane problemy