Mam logo .png dla mojej aplikacji, które nie ma tła, kiedy dodam je do Android Studio jako zasób obrazu, jestem zmuszony mieć tło. Pole szesnastkowe nie akceptuje 8-cyfrowych kodów kolorów, tylko 6 cyfr. Czy w ogóle można zachować niewidoczne tło?
Mam logo .png dla mojej aplikacji, które nie ma tła, kiedy dodam je do Android Studio jako zasób obrazu, jestem zmuszony mieć tło. Pole szesnastkowe nie akceptuje 8-cyfrowych kodów kolorów, tylko 6 cyfr. Czy w ogóle można zachować niewidoczne tło?
Odpowiedzi:
Aby tło było przezroczyste, ustaw shape
jako None
. Zobacz obrazek poniżej:
EDYTOWAĆ:
W przypadku Android Studio 3.0 można to ustawić na Legacy
karcie
Używam Android Studio 3.0.1
i jeśli powyższa odpowiedź nie działa dla Ciebie, spróbuj zmienić icon type
na Legacy
i wybierz Shape
na None
, domyślna to Adaptive and Legacy
.
Uwaga: niektóre urządzenia mają zainstalowany program uruchamiający z automatycznym dodawaniem białego tła do ikony, to normalne.
Masz dwa sposoby:
1) W Warstwie tła> Skalowanie zmniejsz zmianę rozmiaru do 1
a następnie w Legacy> Legacy Icon ustaw Shape jako None
2) w Warstwie tła> Skalowanie> Zasób źródłowy możesz ustawić obraz jako obraz o rozmiarze 1 x 1 piksela (lub o dowolnym rozmiarze) przezroczysty.png (już utworzony).
a następnie w Legacy> Legacy Icon ustaw Shape jako None
Full Bleed Layers
?
powyższe podejście nie działało dla mnie na Android Studio 3.0. Nadal pokazuje tło. Właśnie utworzyłem pusty plik tła
<?xml version="1.0" encoding="utf-8"?>
<vector
android:height="108dp"
android:width="108dp"
android:viewportHeight="108"
android:viewportWidth="108"
xmlns:android="http://schemas.android.com/apk/res/android">
</vector>
To zadziałało z wyjątkiem warstw z pełnym spadem
To tylko kolejne obejście.
I jesteś gotowy.
Najpierw utwórz ikonę programu uruchamiającego (Adaptive and Legacy)
z zasobu obrazu:
Wybierz image
warstwę tła i zmień jej rozmiar na 0% lub 1%, a na karcie starszej wersji ustaw shape
na none
.
Następnie usuń folder res/mipmap/ic_laucher_round
w oknie projektu i otwórz plik AndroidManifest.xml i usuń atrybut android:roundIcon="@mipmap/ic_launcher_round"
z application
elementu.
Na koniec usuń ic_launcher.xml
z mipmap-anydpi-v26
.
Zwróć uwagę, że: niektóre urządzenia, takie jak Nexus 5X (Android 8.1), automatycznie dodają białe tło i nie mogą nic zrobić.
Oto kroki, które podjąłem, aby uczynić obraz przezroczystym:
1- Korzystałem z witryny internetowej, która sprawia, że obraz jest przejrzysty, jest ich dużo. Dla mnie używam tego https://www241.lunapic.com/editor/?action=transparent, a czasem tego http://www.online-image-editor.com/help/transparency
2- W Android Studio (używam wersji 3.1.3), otwórz zasób obrazu z aplikacji> res (kliknij prawym przyciskiem myszy)> Nowy> Zasób obrazu
3- W ścieżce wybierz lokalizację przezroczystego obrazu, który pobrałeś z witryny internetowej i ustaw pozostałe opcje, jak pokazano, a następnie Dalej, a następnie Zakończ. Pięć różnych rozmiarów obrazu mdpi (48 × 48), hdpi (72 × 72), xhdpi (96 × 96), xxhdpi (144 × 144) i xxxhdpi (192 × 192) zostanie utworzonych w res / mipmap- foldery gęstości .
4- Jeśli potrzebujesz rozmiarów (wymiarów) innych niż powyższe, możesz użyć tej strony internetowej http://nsimage.brosteins.com/, aby przesłać swój obraz PNG o największym rozmiarze, który będzie używany w xxxhdpi. Po załadowaniu możesz pobrać plik zip zawierający obrazy w pięciu różnych rozmiarach w folderach res / drawable- density .
Korzystając z Androida 3.0.1 zauważyłem to dziwne zachowanie (rozwiązanie), po pierwsze: w warstwie tła w source_asset zmień asset_type z obrazu na kolor, a następnie zmień go z powrotem na obraz. po drugie: włącz przycinanie w skalowaniu, a następnie zmień rozmiar do niewielkiego procentu i będzie działać idealnie. PS: Jeśli nie wykonałeś pierwszego kroku, skalowanie nie będzie miało wpływu. a jeśli ktoś ma wyjaśnienie, proszę o przedstawienie. kroki