Próbuję wykonać pewne czynności na pasku ActionBar w systemie Android.
Dodałem już nowe przedmioty po prawej stronie paska akcji.
Jak mogę zmienić lewą stronę paska akcji? Chcę zmienić ikonę i tekst, a także dodać „przycisk Wstecz” na pasku akcji dla innych ekranów
android
android-layout
android-actionbar
Allan Ramírez
źródło
źródło
getSupportActionBar
zamiastgetActionBar
.getActionBar().setHomeButtonEnabled(true)
używa interfejsu API w wersji 14 lubgetActionBar().setDisplayHomeAsUpEnabled(true)
supportActionBar?.setDisplayShowTitleEnabled(true)
wtedysupportActionBar?.title = "your title"
. I należy to zrobić przy tworzeniu działania za pomocąonResume
, a nieonCreate
wewnątrzstartActivity
.Aby wszystkie ikony pasków były dostępne dla jednej ikony, możesz to zrobić w Manifeście na Androida.
źródło
pre-loads
ikona, programowo ikona ustawień jest powolna!Musisz tylko dodać te 3 wiersze kodu. Zastąp ikonę własną ikoną. Jeśli chcesz wygenerować ikony, użyj tego
źródło
W Androidzie 5.0 wytyczne dotyczące projektowania materiałów odradzają używanie ikony w pasku akcji
aby go włączyć, dodaj następujący kod
podziękowania należą się autorowi tego artykułu
źródło
Jeśli chcesz zmienić tytuł paska akcji, podaj następujący 1-liniowy kod w polu onCreate () swojej aktywności
źródło
Możesz zmienić ikonę w swoim, dodając dowolną ikonę do odpowiednich folderów do rysowania, a następnie zmieniając tę linię w pliku AndroidManifest.xml:
aby dopasować dowolną nazwę twojej ikony. Lub umieść swoją ikonę jako ic_launcher, jeśli jest to ta sama ikona. Jeśli chodzi o to, co mówi, dodaj lub zmień dowolne ciągi, które pasują do tego w pliku res / wartości / strings.xml. Następnie ponownie w pliku AndroidManifest.xml zmień ten wiersz:
na dowolny ciąg, który masz w nich. Będziesz musiał to zrobić dla całej aplikacji i dowolnych czynności, które chcesz, ale linie są takie same.
Mam nadzieję że to pomoże.
źródło
android:icon
znacznik aktywności?źródło
W tym celu możesz to zrobić na 2 sposoby: XML lub Java. Zobacz tutaj: jak zmienić tekst na pasku akcji
Więc:
XML:
Jawa:
źródło
setTitle(CharSequence text)
lubsetTitle(int titleRes)
. Nie używaj,requestWindowFeature(Window.FEATURE_CUSTOM_TITLE)
chyba że planujesz zastąpić cały pasek tytułu własnym niestandardowym widokiem.Dla zestawu Tytuł :
Dla zestawu Ikona :
źródło
Wewnątrz użyłem następującego połączenia
onNavigationItemSelected
:źródło
Dodaj poniższy kod do funkcji onCreate w swojej działalności.
źródło
Ta praca dla mnie:
źródło
Tytuł paska akcji będzie domyślnie używał etykiety bieżącej aktywności, ale można ją także ustawić programowo
ActionBar.setTitle()
.Aby wdrożyć funkcjonalność przycisku „Wstecz” (a dokładniej „W górę”), o którym mówisz, przeczytaj sekcję „Korzystanie z ikony aplikacji do nawigacji” w przewodniku dla programistów paska akcji .
Wreszcie, aby zmienić ikonę, przewodnik również to obejmuje. Krótko mówiąc, pasek akcji wyświetli obraz dostarczony w
android:icon
manifeścieapplication
lubactivity
elemencie, jeśli taki istnieje. Typową praktyką jest utworzenie nazwy aplikacji (we wszystkich różnych gęstościach, których potrzebujesz) o nazwieic_launcher.png
i umieszczenie jej w swoichdrawable-*
katalogach.źródło
Wystąpił
non-static method setTitle(CharSequence) cannot be referenced from a static context
błąd, ponieważ użyłemsetTitle()
w statycznej klasie PlaceholderFragment. Rozwiązałem to za pomocągetActivity().getActionBar().setTitle("new title");
źródło
Przejdź do manifestu, w którym konkretną czynność chcesz zmienić Pasek akcji Nazwa tytułu i napisz android: label = "Nazwa tytułu"
źródło
Przejdź do pliku AndroidManifest.xml . Znajdź
<application>
tag Tam możesz zobaczyć atrybutTeraz przejdź do res> wartości> strings.xml
Zmienić
do
Przykład
AndroidManifest.xml
strings.xml
źródło
Możesz także wykonać następujące czynności:
źródło