Próbowałem znaleźć jakiś sposób na usunięcie ikony / logo z paska akcji, ale jedyne, co znalazłem po godzinie przeszukiwania SO, dokumentacji Androida i Google, to sposób całkowitego usunięcia paska tytułu. Nie tego chcę. Chcę tylko usunąć ikonę / logo z paska tytułu.
Czy ktoś wie, jak to osiągnąć? Najlepiej, gdybym to zrobił w XML .
Odpowiedzi:
Jeśli zdefiniowałeś
android:logo="..."
w swoim<application>
taguAndroidManifest.xml
, musisz użyć tych rzeczy, aby ukryć ikonę:motyw pre-v11
v11 i nowsze motywy
Użycie tych dwóch stylów odpowiednio ukryło ikonę paska akcji na urządzeniu 2.3 i 4.4 (ta aplikacja używa AppCompat ).
źródło
<application (...) android:logo="@android:color/transparent"> (...)
żeAndroidManifest.xml
siedziałem w moim stylu i zmuszałemuseLogo
dodisplayOptions
tego<item name="android:displayOptions">showHome|useLogo|homeAsUp|showTitle</item> <item name="displayOptions">showHome|useLogo|homeAsUp|showTitle</item>
. Ta ostatnia część była ważna, ponieważ w niektórych urządzeniach (myślę, że głównie post-lollipop) cholerny widok wyszukiwania wziął appIcon i umieścił go w miejscu logo, nawet jeśli logo było ustawione jako przezroczyste: sDodaj następujący kod do stylów paska akcji:
PS: Używam Actionbar Sherlocka i to działa dobrze.
źródło
@android:color/transparent
jako CZARNE. Wydaje się szalone, ale wielu producentów urządzeń zastępuje domyślne ustawienia Androida; w tym kolory. Z tego powodu utworzyłbym kolor w colors.xml w ten sposób:<color name="transparent">#00000000</color>
i użyłbym odniesienia do tego zamiast pobierania wartości z Androida.Jeśli nie chcesz, aby ikona w określonej czynności.
źródło
ColorDrawable cd = new ColorDrawable(getResources().getColor(android.R.color.transparent)); cd.setBounds(0,0,0,0); getActionBar().setIcon(cd);
setLogo
zamiastsetIcon
metody. Mimo to świetna wskazówka, zaprowadziła mnie na właściwą ścieżkę !!To zadziałało dla mnie
źródło
Powołanie
oprócz,
ukryje logo, ale wyświetli ikonę Home As Up. :)
źródło
Miej świadomość, że:
Sprawi również, że elementy opcji będą przezroczyste.
źródło
źródło
To zadziałało dla mnie.
źródło
Usuń lub pokaż tytuł za pomocą:
Usuń lub pokaż logo za pomocą:
Usuń wszystko:
źródło
możesz również dodać poniższy kod w AndroidManifest.xml .
Będzie działać dobrze.
Ale odkryłem, że powoduje to problem, ponieważ ikona programu uruchamiającego również staje się przezroczysta.
Więc użyłem:
i działało dobrze.
Ale jeśli masz więcej niż jedno działanie i chcesz, aby ikona działania była przezroczysta, to poprzednie podejście zadziała.
źródło
Użyłem tego i zadziałało dla mnie.
źródło
źródło
Myślę, że dokładna odpowiedź brzmi: dla interfejsu API 11 lub nowszego:
Inaczej:
(ponieważ potrzebuje biblioteki wsparcia).
źródło
przejdź do swojego manifestu i znajdź tag aplikacji
..... ... ...
źródło
Odpowiedź Qiqi Abaziza jest w porządku, ale nadal długo walczyłem, aby działał z pakietem kompatybilności i zastosował styl do odpowiednich elementów. Również hack do przezroczystości jest niepotrzebny. Oto kompletny przykład działający dla wersji 8 i nowszych:
wartości \ styles.xml
AndroidManifest.xml (powłoka)
źródło
Przejdź do swojego manifestu i znajdź swoją aktywność, a następnie dodaj ten kod:
powyżej linii ukryj swoje
Actionbar
.Jeśli potrzebujesz innej funkcji, możesz zobaczyć inne opcje za pomocą (CLR + SPC).
źródło
Najszybszym sposobem jest zmodyfikowanie pliku Manifest.xml. Jeśli np. Chcesz usunąć logo działania „Aktywność” i pozostawić logo w innych działaniach, możesz wykonać następujące czynności:
źródło
Żadne z powyższych nie działało.
Ale to załatwiło sprawę:
(ikona usunięta z paska narzędzi)
źródło