Couleur d'arrière-plan de l'icône du lanceur d'actifs d'image Android Studio

112

J'ai un logo .png pour mon application qui n'a pas d'arrière-plan, lorsque je l'ajoute au studio Android en tant qu'élément d'image, je suis obligé d'avoir un arrière-plan. Le champ hexadécimal n'accepte pas les codes de couleur à 8 chiffres, 6 chiffres uniquement. Est-il possible de garder l'arrière-plan invisible?

HishamGarout
la source
1
romannurik.github.io/AndroidAssetStudio Excellent outil pour tout type d'icônes que vous souhaitez générer
Pierre

Réponses:

201

Pour rendre l'arrière-plan transparent, définissez shapecomme None. Voir l'image ci-dessous:

entrez la description de l'image ici

ÉDITER:

Pour Android Studio 3.0, vous pouvez le définir à partir de l' Legacyonglet

entrez la description de l'image ici

Bonjour le monde
la source
27
Merci beaucoup, je n'ai pas remarqué que j'avais besoin de faire défiler vers le bas pour voir la forme :)
HishamGarout
1
il suffit de sélectionner le bouton radio d'image et de faire défiler vers le bas ... merci a travaillé pour moi
Ghanshyam Nayma
3
Encore un autre exemple du pauvre UX dans Studio
AmitP
21
Cette réponse ne semble plus valable depuis Android Studio 3.0.
ElYeante
2
Comment rendre le calque d'arrière-plan transparent?
zulkarnain shah
38

J'utilise Android Studio 3.0.1et si la réponse ci-dessus ne fonctionne pas pour vous, essayez de changer le icon typeen Legacyet sélectionnez Shapeen None, celui par défaut est Adaptive and Legacy.

entrez la description de l'image ici

Remarque: certains appareils ont installé un lanceur avec l'ajout automatique d'un fond blanc dans l'icône, c'est normal.

Polaire
la source
2
Vous ne sélectionnez hérité que lorsque votre targetSdkVersion est inférieure à 26. Si votre targetSdkVersion est 26, votre type d'icône doit être adaptatif et hérité.
Rupam Das
1
Comment rendre le calque d'arrière-plan transparent?
zulkarnain shah
@zulkarnainshah si vous choisissez de n'en former aucun avec le mode hérité, alors il affichera une couleur transparente.
Farhana
Ne semble pas fonctionner dans Android Studio 3+. Cependant, la réponse de Patrick ci-dessous semble fonctionner, du moins dans Android Studio 3.1.2.
Stephen M -on grève-
@StephenM - quelle version d'Android vous utilisez? N'oubliez pas que les choses deviennent différentes, en particulier de l'icône à partir de Lollipop à la dernière version d'Android, donc je ne serais pas surpris si les gens voient une icône d'arrière-plan différente dans la dernière version d'Android. le correctif consiste à essayer d'utiliser la version inférieure d'Android et à utiliser un lanceur qui n'ajoute aucun arrière-plan dans les icônes uniquement pour le développement afin de voir la conception réelle de votre icône ou de continuer à utiliser le dernier Android et de suivre simplement ce qu'ils veulent.
Polar
26

Vous avez deux façons:

1) Dans Calque d'arrière-plan> Mise à l'échelle , réduisez le redimensionnement à 1

entrez la description de l'image ici

puis dans Legacy> Legacy Icon, définissez Shape sur None

entrez la description de l'image ici


2) dans Calque d'arrière-plan> Mise à l'échelle> Élément source , vous pouvez définir une image en tant qu'image transparente.png 1x1 pixel (ou de toute taille) (que vous avez déjà créée).

entrez la description de l'image ici

puis dans Legacy> Legacy Icon, définissez Shape sur None

entrez la description de l'image ici

gadolf
la source
15
tu as fait quoi Full Bleed Layers?
Tricky Bay
21

l'approche ci-dessus n'a pas fonctionné pour moi sur Android Studio 3.0. Il montre toujours l'arrière-plan. Je viens de créer un fichier d'arrière-plan vide

<?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>

Cela a fonctionné sauf les couches de fond perdu

Patrick
la source
1
J'utilise également Android Studio 3.0, je fais de même pour le faire fonctionner. On dirait que nous ne sommes plus autorisés à créer une base d'icônes sur ce que nous voulons.
Polar
2
Cela ne fonctionne pas. Android Studio 3.0.1, vous ne pouvez pas définir un arrière-plan transparent.
Rupam Das
2
A travaillé pour moi dans Android Studio 3.1.2. Il est apparu dans le générateur d'éléments d'image en noir, mais il est transparent lorsque je déploie mon application.
Stephen M -on grève-
J'obtiens une erreur de rendu lorsque j'essaye d'utiliser ce vecteur comme arrière-plan, quelqu'un d'autre?
Chagai Friedlander
11

C'est juste une autre solution de contournement.

  1. Pour le 'Calque de premier plan', sélectionnez 'Type d'actif' comme texte et supprimez le texte par défaut dans le champ de texte.

Accédez au chemin de votre image

  1. Pour le 'Calque d'arrière-plan', sélectionnez 'Type d'actif' comme image et choisissez maintenant le chemin de l'image que vous voulez comme icône.

entrez la description de l'image ici

Et vous êtes prêt à partir.

Da Man
la source
Solution très simple. Grand merci! Je l'ai testé sur Android Studio 3.6 et une chose à ajouter est qu'il me donnait l'erreur lorsque le texte au premier plan était nul. Donc ce que j'avais fait, c'est juste ajouter un espace là-bas et ça marche. Et en rajoutant encore! après cela, j'ai eu un problème: lorsque j'ai fini d'ajouter mipmap et exécuté mon projet, il y avait un logo Android remplaçant mon logo et j'ai corrigé cela en modifiant les fichiers xml de l'icône mipmap en supprimant le slogan au premier plan. J'espère que cela aidera quelqu'un.
Feroz Khan
C'est génial!
ikerfah le
2

Android Studio 3.5.3 Cela fonctionne avec cette configuration.

entrez la description de l'image ici

entrez la description de l'image ici

entrez la description de l'image ici

selvabharathi s
la source
1

Tout d'abord, créez une icône (Adaptive and Legacy)de lanceur à partir de l'élément Image:

Sélectionnez un imagecalque d'arrière-plan et redimensionnez-le à 0% ou 1% et dans l'onglet hérité défini shapesur none.

Ensuite, supprimez le dossier res/mipmap/ic_laucher_rounddans la fenêtre du projet et ouvrez AndroidManifest.xml et supprimez l'attribut android:roundIcon="@mipmap/ic_launcher_round"de l' applicationélément.

À la fin, supprimez ic_launcher.xmlde mipmap-anydpi-v26.

Notez que: certains appareils comme le Nexus 5X (Android 8.1) ajoutent automatiquement un fond blanc et ne peuvent rien faire.

Alireza K
la source
0

Voici les étapes que j'ai suivies pour rendre une image transparente:

1- J'ai utilisé un site internet en ligne qui rend l'image transparente, il y en a beaucoup. Pour moi, j'utilise ce https://www241.lunapic.com/editor/?action=transparent et parfois ce http://www.online-image-editor.com/help/transparency

2- Dans Android Studio (j'utilise la version 3.1.3), ouvrez Image Asset à partir de l'application> res (clic droit)> Nouveau> Image Asset Élément d'image

3- Dans le Chemin, choisissez l'emplacement de l'image transparente que vous avez téléchargée depuis le site Web en ligne, et effectuez les autres options comme indiqué, puis Suivant, puis Terminer. Les cinq tailles différentes d'image mdpi (48 × 48), hdpi (72 × 72), xhdpi (96 × 96), xxhdpi (144 × 144) et xxxhdpi (192 × 192) seront créées dans le res / mipmap- dossiers de densité . Configuration des éléments d'image

4- Si vous avez besoin de tailles (dimensions) différentes de celles ci-dessus, vous pouvez utiliser ce site http://nsimage.brosteins.com/ pour télécharger votre image PNG de plus grande taille qui sera utilisée dans xxxhdpi. Après le téléchargement, vous pouvez télécharger un fichier zip contenant les cinq tailles d'image différentes dans les dossiers de densité res / drawable . entrez la description de l'image ici

Hasan El-Hefnawy
la source
-1

En utilisant Android 3.0.1, j'ai remarqué ce comportement étrange (solution), Premièrement: dans la couche d'arrière-plan dans le source_asset, changez le asset_type de l'image en couleur et le changez-le en image. deuxième: activez le découpage dans la mise à l'échelle, puis redimensionnez-le à un petit pourcentage et cela fonctionnera parfaitement. PS: Si vous n'avez pas fait la première étape, la mise à l'échelle ne prendra pas effet. et si quelqu'un a une explication à ce sujet, veuillez fournir. pas

All_Rounder
la source