Image asset android studio прозрачный фон

Android Значок средства запуска Studio Image Asset прозрачный фоновый цвет

Вы можете подумать, что этот вопрос является дубликатом это один. Но с тех пор Android Studio был обновлен, и решение, данное там, больше не работает.

Я пытаюсь установить логотип своего приложения с помощью графического ресурса в Android studio. Это потому, что если я помещаю логотип своего приложения непосредственно в drawable или mipmap, то это вызывает много проблем, таких как: большой, то происходит сбой приложения, если устройство работает на oreo, то логотип не будет отображаться, а по умолчанию будет показан ic_launcher и т. д.

При попытке установить логотип моего приложения с помощью графического ресурса я столкнулся с проблемой: я не могу сохранить прозрачный фон логотипа приложения.

У меня есть логотип png, созданный в фотошопе, и я хочу установить его в качестве логотипа своего приложения, и мне не нужен фон, но Android Студийное изображение не предоставляет никакой возможности удалить фон. Я попробовал следующие решения от Google:

но ничего из этого не помогло мне.

Испытанные решения:

  1. Устанавливая форму в ноль
  2. удалив файл ic_launcher_background из его местоположения по умолчанию
  3. Пробовал в разных устройствах

Ни одна из этих работ . пожалуйста, помогите мне. Любая помощь будет оценена.

Android 8.0 Oreo (уровень API 26) представлен иконки адаптивного запуска , который состоит из двух слоев: переднего плана и фона. Рекомендации по дизайну материала утверждают, что фоновый слой должен быть непрозрачным в Android O и далее, как вы можете видеть внизу следующей цитаты. Таким образом, значок адаптивного запуска для Android 8.0 или выше должен иметь по крайней мере непрозрачный цвет фона, если targetSdkVersion вашего приложения 26 или выше.

Иконки для Android

Android O и выше

Значки Android O представляют ваше приложение на экранах «Домой» и «Все приложения» устройства. Следующие рекомендации описывают, как значки могут получать уникальные визуальные эффекты, анимацию и поведение.

Спецификации слоя

Иконки состоят из двух слоев: переднего плана и фона. Каждый слой может анимировать и получать обработку независимо от другого слоя.

Передний план (прокрутка параллакса)

  • 108 х 108 дп
  • 72dp замаскированный участок
  • Прозрачность рекомендуется (необязательно)

Фон (тонкий параллакс)

  • 108 х 108 дп
  • 72dp замаскированный участок
  • Должно быть непрозрачным

Обходной путь для 7.1 или ниже

Хотя значки запуска для версии 8.0 или выше должны иметь непрозрачный цвет фона, другие устаревшие значки запуска для версии 7.1 или ниже могут вернуться к прозрачному цвету фона, если вы можете опустить круглые значки запуска в своем приложении.

  1. Сначала создайте значки запуска (Adaptive and Legacy) . Это создаст адаптивные иконки запуска и старые иконки запуска. Сначала все они имеют непрозрачный цвет фона.
  2. После этого создайте значки запуска (только для Legacy) . Это перезапишет только существующие значки запуска, как вы можете видеть на втором скриншоте ниже. Если вы установите shape на none , они будут иметь прозрачный фоновый цвет.
  3. Удалить папку res/mipmap/ic_laucher_round в окне проекта.
  4. Откройте AndroidManifest.xml и удалите атрибут Android:roundIcon=»@mipmap/ic_launcher_round» из элемента application .
Читайте также:  What is picasa on android

На приведенной выше левой панели следующие XML-файлы определяют значки адаптивного запуска для Android 8.0 или выше.

Как видно на правой панели, они ссылаются на следующие нарисованные файлы XML.

Обновление № 1:

В Android 8.0 или выше, фоновый цвет значков запуска может быть прозрачным, как показано на скриншотах Android 8.1 (Nexus 5X)). Пример приложения » NoAdaptive «не имеет ресурсов для значков адаптивного запуска в папке mipmap-anydpi-v26 , а у другого приложения «Адаптивный» есть ресурс.

Обновление № 2:

Хотя цвет фона значка запуска может быть прозрачным в Android 8.0 или выше, это зависит от пользовательского приложения запуска. Некоторые приложения запуска преобразуют ваш старый значок в непрозрачный адаптивный значок.

В устройстве Nexus 5X (Android 8.1)

Приложение запуска по умолчанию — Google Now Launcher , в соответствии с именем пакета com.google.Android.launcher . Цвет фона может быть прозрачным, как на скриншотах Обновления № 1.

В эмуляторе Nexus 5 (Android 8.1)

Приложение запуска по умолчанию — Pixel Launcher , в соответствии с именем пакета com.google.Android.apps.nexuslauncher . Цвет фона может быть прозрачным на экране Recents, как на скриншотах ниже:

  • непрозрачный на экране Home
  • прозрачный на экране Recents
  • непрозрачный на экране Все приложения

Непрозрачный белый фон в некоторых приложениях запуска

Эти GMS приложения с закрытым исходным кодом:

  • com.google.Android.launcher Google Now Launcher
  • com.google.Android.apps.nexuslauncher Pixel Launcher

Напротив, приложения AOSP с открытым исходным кодом. Большинство приложений запуска в Android основаны на исходном коде следующих приложений запуска:

  • com.Android.launcher
    • Launcher (прекращено)
    • Launcher2 (наследие)
  • com.Android.launcher2
    • Launcher2 (оригинальное имя пакета)
  • com.Android.launcher3
    • Launcher (для Android 5.0 Lollipop или выше)

Launcher3 исходный код

В ветке git oreo-release из Launcher3, LauncherIcons.Java есть метод wrapToAdaptiveIconDrawable , который оборачивает значок устаревшего средства запуска в значок адаптивного средства запуска.

Флаг FeatureFlags.LEGACY_ICON_TREATMENT определяется в FeatureFlags.Java :

Таким образом, цвет фона значка устаревшего средства запуска зависит от этого флага, и он может быть непрозрачным в некоторых приложениях средства запуска, таких как Pixel Launcher.

Цвет фона

Если флаг установлен в true , новый значок адаптивного запуска создается с помощью R.drawable.adaptive_icon_drawable_wrapper , и существующий устаревший значок становится его основным слоем. Фоновый слой является прорисовываемым: @color/legacy_icon_background , согласно XML-файл ресурса :

Цвет legacy_icon_background определяется в colors.xml

Итак, цвет фона становится белым.

В Android 5.0 значок всегда имел непрозрачный фон, пока я не создал прозрачный файл.

  1. Файл> Создать> Изображение актива.
  2. Перейдите к Launcher Icons (Adaptive and Legacy) в Icon Type .
  3. Выберите Image in Asset Type и ​​выберите изображение в поле Path ( Foreground Layer вкладка).
  4. Создайте или загрузите ниже PNG-файл с прозрачным фоном размером 512×512 px (это размер ic_launcher-web.png ).
  5. В Background Layer выберите вкладку Image in Asset Type и ​​загрузите прозрачный фон из шага 4.
  6. На вкладке Legacy выберите Yes для всех Generate , None для Shape .
  7. В Foreground Layer а также Background Layer вкладки вы можете изменить размер обрезки.
Читайте также:  Комплексные пакеты настроек android

Хотя вы увидите черный фон за изображением в окне Preview , после нажатия Next , Finish и ​​компиляции приложения вы увидите прозрачный фон в Android 5, Android 8.

Попробуйте этот способ, который работал для меня:

Сначала создайте значок запуска (Adaptive and Legacy) из Image Asset: выберите image для фонового слоя и измените его размер на 0% или 1%, а на вкладке прежних версий установите для shape значение none .

Удалить папку res/mipmap/ic_laucher_round в окне проекта и откройте AndroidManifest.xml и удалите атрибут Android:roundIcon=»@mipmap/ic_launcher_round» из элемента application .

Удалять ic_launcher.xml от mipmap-anydpi-v26 .

Примечание. Некоторые устройства, такие как Nexus 5X (Android 8.1), автоматически добавляют белый фон и ничего не могут сделать.

Если я не ошибаюсь, у вас есть файл png с 512×512 px из файла Photoshop, и вы хотите сделать из него логотип для всех необходимых папок (от mipmap-xxxhdpi до mipmap-mdpi).

Вы также можете использовать это после создания иконки с помощью Android Studio тоже. Я предпочитаю создавать свои иконки с помощью Photoshop.

Я использую этот сайт после создания иконки 512x512px с помощью Photoshop. Вы можете иметь значки не только для Android также для приложений iPhone и других приложений, и это бесплатно. Значки корректно масштабируются, имеют имена и помещаются в папки mipmap в Android = папка Zip-файла. Вы просто распаковываете файл после загрузки, копируете и вставляете. Я сделал как минимум 50 иконок и никогда не было проблем.

Источник

Цвет фона значка запуска изображений Android Studio

У меня есть логотип .png для моего приложения, у которого нет фона, когда я добавляю его в студию Android в качестве объекта изображения, я вынужден иметь фон. Шестнадцатеричное поле не принимает 8-значные цветовые коды, только 6-значные. Есть ли способ сделать фон невидимым?

Чтобы сделать фон прозрачным, установите shape как None . Смотрите изображение ниже:

Для Android Studio 3.0 вы можете установить его на Legacy вкладке

Я использую, Android Studio 3.0.1 и если приведенный выше ответ не работает для вас, попробуйте изменить icon type на Legacy и выбрать Shape значение None по умолчанию Adaptive and Legacy .

Примечание. На некоторых устройствах установлена ​​программа запуска с автоматическим добавлением белого фона в значок, это нормально.

У вас есть два пути:

Читайте также:  Крутые функции андроид 11

1) В Background Layer> Scaling уменьшите размер до 1

а затем в Legacy> Legacy Icon установить Shape как None

2) в разделе «Фоновый слой»> «Масштабирование»> «Исходный объект» вы можете установить изображение как изображение размером 1×1 пиксель (или любого размера) transparent.png (вы уже создали).

а затем в Legacy> Legacy Icon установить Shape как None

вышеупомянутый подход не работал у меня на Android Studio 3.0. Он по-прежнему показывает фон. Я только что сделал пустой файл фона

Это сработало, за исключением слоев полного выпуска за обрез.

Это просто еще один обходной путь.

  1. Для «Слоя переднего плана» выберите «Тип актива» в качестве текста и удалите текст по умолчанию в текстовом поле.

  1. Для «Фонового слоя» выберите «Тип актива» в качестве изображения, а теперь выберите путь к изображению, которое вы хотите, в качестве значка.

И тебе хорошо идти.

Android Studio 3.5.3 Работает с этой конфигурацией.

Сначала создайте значок запуска (Adaptive and Legacy) из Image Asset:

Выберите image фоновый слой и измените его размер на 0% или 1%, а на вкладке «В устаревшей shape версии » установите значение none .

Затем удалите папку res/mipmap/ic_laucher_round в окне проекта, откройте AndroidManifest.xml и удалите атрибут android:roundIcon=»@mipmap/ic_launcher_round» из application элемента.

В конце концов удалите ic_launcher.xml из mipmap-anydpi-v26 .

Обратите внимание: некоторые устройства, такие как Nexus 5X (Android 8.1), автоматически добавляют белый фон и ничего не могут делать.

Вот шаги, которые я предпринял, чтобы сделать изображение прозрачным:

1- Я использовал онлайн-сайт, который делает изображение прозрачным, их много. Для меня я использую этот https://www241.lunapic.com/editor/?action=transparent, а иногда и http://www.online-image-editor.com/help/transparency

2- В Android Studio (я использую версию 3.1.3) откройте Image Asset из приложения> res (щелкните правой кнопкой мыши)> New> Image Asset.

3- В поле «Путь» выберите расположение прозрачного изображения, которое вы загрузили с веб-сайта, и установите другие параметры, как показано, затем «Далее», затем «Готово». Пять различных размеров изображения mdpi (48 × 48), hdpi (72 × 72), xhdpi (96 × 96), xxhdpi (144 × 144) и xxxhdpi (192 × 192) будут созданы в файле res / mipmap- плотность папок.

4- Если вам нужны размеры (размеры), отличные от указанных выше, вы можете использовать этот веб-сайт http://nsimage.brosteins.com/ для загрузки изображения PNG самого большого размера, которое будет использоваться в xxxhdpi. После загрузки вы можете загрузить zip-файл, содержащий изображения пяти разных размеров в папках res / drawable- density .

Используя android 3.0.1, я заметил это странное поведение (решение). Во-первых: в фоновом слое в source_asset измените asset_type с изображения на цвет, а затем снова измените его на изображение. во-вторых: включите обрезку при масштабировании, а затем измените размер до небольшого процента, и все будет работать отлично. PS: Если вы не сделали первый шаг, масштабирование не повлияет. и если у кого-то есть объяснение по этому поводу, пожалуйста, предоставьте. шаги

Источник

Оцените статью