สีพื้นหลังไอคอนตัวเรียกใช้สินทรัพย์รูปภาพ Android Studio


112

ฉันมีโลโก้. png สำหรับแอปของฉันที่ไม่มีพื้นหลังเมื่อฉันเพิ่มลงใน android studio เป็น Image Asset ฉันถูกบังคับให้มีพื้นหลัง ช่องเลขฐานสิบหกไม่ยอมรับรหัสสี 8 หลัก 6 หลักเท่านั้น มีการทำให้พื้นหลังมองไม่เห็นหรือไม่?


1
romannurik.github.io/AndroidAssetStudioเครื่องมือที่ยอดเยี่ยมสำหรับไอคอนทุกประเภทที่คุณต้องการสร้าง
Pierre

คำตอบ:


201

จะทำให้พื้นหลังโปร่งใสชุดเป็นshape Noneดูภาพด้านล่าง:

ใส่คำอธิบายภาพที่นี่

แก้ไข:

สำหรับ Android Studio 3.0 คุณสามารถตั้งค่าได้จากLegacyแท็บ

ใส่คำอธิบายภาพที่นี่


27
ขอบคุณมากฉันไม่ได้สังเกตว่าฉันต้องเลื่อนลงเพื่อดูรูปร่าง :)
HishamGarout

1
เพียงแค่เลือกปุ่มตัวเลือกภาพและเลื่อนลง ... ขอบคุณที่ทำงานให้ฉัน
Ghanshyam Nayma

3
อีกตัวอย่างหนึ่งของ UX ที่น่าสงสารใน Studio
AmitP

21
คำตอบนี้ดูเหมือนจะใช้ไม่ได้อีกต่อไปจาก Android Studio 3.0
ElYeante

2
จะทำให้เลเยอร์พื้นหลังโปร่งใสได้อย่างไร?
zulkarnain shah

38

ฉันใช้Android Studio 3.0.1และถ้าคำตอบดังกล่าวข้างต้นไม่ได้ผลสำหรับคุณพยายามที่จะเปลี่ยนicon typeเข้าLegacyและเลือกShapeที่จะเป็นหนึ่งเริ่มต้นคือNoneAdaptive and Legacy

ใส่คำอธิบายภาพที่นี่

หมายเหตุ: อุปกรณ์บางเครื่องได้ติดตั้งตัวเรียกใช้งานโดยเพิ่มพื้นหลังสีขาวในไอคอนโดยอัตโนมัติซึ่งเป็นเรื่องปกติ


2
คุณเลือกแบบเดิมก็ต่อเมื่อ targetSdkVersion ของคุณน้อยกว่า 26 เท่านั้นหาก targetSdkVersion ของคุณคือ 26 ประเภทไอคอนของคุณควรปรับเปลี่ยนได้และเป็นแบบเดิม
Rupam Das

1
จะทำให้เลเยอร์พื้นหลังโปร่งใสได้อย่างไร?
zulkarnain shah

@zulkarnainshah หากคุณเลือกที่จะไม่มีรูปร่างด้วยโหมดดั้งเดิมมันจะแสดงสีโปร่งใส
Farhana

ดูเหมือนจะไม่ทำงานใน Android Studio 3+ อย่างไรก็ตามคำตอบของ Patrick ด้านล่างดูเหมือนจะใช้ได้ผลอย่างน้อยก็ใน Android Studio 3.1.2
สตีเฟนเอ็ม - นัดหยุดงาน -

@StephenM - Android เวอร์ชันใดที่คุณใช้อยู่ โปรดจำไว้ว่าสิ่งต่าง ๆ จะแตกต่างเป็นพิเศษจากไอคอนที่เริ่มตั้งแต่ Lollipop ไปจนถึง Android เวอร์ชันล่าสุดดังนั้นฉันจะไม่แปลกใจเลยหากผู้คนเห็นไอคอนพื้นหลังที่แตกต่างกันใน Android เวอร์ชันล่าสุด การแก้ไขคือพยายามใช้ Android เวอร์ชันที่ต่ำกว่าและใช้ตัวเรียกใช้งานที่ไม่ได้เพิ่มพื้นหลังใด ๆ ในไอคอนเพียงเพื่อการพัฒนาเพื่อดูการออกแบบที่แท้จริงของไอคอนของคุณหรือใช้ Android เวอร์ชันล่าสุดและทำตามสิ่งที่ต้องการ
ขั้วโลก

26

คุณมีสองวิธี:

1) ในBackground Layer> Scalingให้ลดResizeเป็น1

ใส่คำอธิบายภาพที่นี่

จากนั้นในLegacy> Legacy Iconตั้งShapeเป็นNone

ใส่คำอธิบายภาพที่นี่


2) ในBackground Layer> Scaling> Source Assetคุณสามารถตั้งค่ารูปภาพเป็นภาพโปร่งใส.pngขนาด 1x1 พิกเซล (หรือขนาดใดก็ได้) (คุณได้สร้างไว้แล้ว)

ใส่คำอธิบายภาพที่นี่

จากนั้นในLegacy> Legacy Iconตั้งShapeเป็นNone

ใส่คำอธิบายภาพที่นี่


15
คุณทำเกี่ยวกับFull Bleed Layersอะไร
Tricky Bay

21

วิธีการข้างต้นไม่ได้ผลสำหรับฉันใน Android Studio 3.0 มันยังคงแสดงพื้นหลัง ฉันเพิ่งสร้างไฟล์พื้นหลังว่างเปล่า

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

วิธีนี้ใช้ได้ผลยกเว้นเลเยอร์ที่มีเลือดออกเต็ม


1
ฉันใช้ Android Studio 3.0 ด้วยฉันก็ทำเช่นเดียวกันเพื่อให้มันใช้งานได้ ดูเหมือนว่าเราไม่อนุญาตให้สร้างไอคอนตามสิ่งที่เราต้องการอีกต่อไป
Polar

2
สิ่งนี้ไม่ทำงาน Android Studio 3.0.1 คุณไม่สามารถตั้งค่าพื้นหลังโปร่งใสได้
Rupam Das

2
ทำงานให้ฉันใน Android Studio 3.1.2 มันปรากฏในตัวสร้าง Image Asset เป็นสีดำ แต่จะโปร่งใสเมื่อฉันปรับใช้แอปของฉัน
Stephen M - นัดหยุดงาน -

ฉันได้รับข้อผิดพลาดในการแสดงผลเมื่อพยายามใช้เวกเตอร์นี้เป็นพื้นหลังมีใครอีกบ้าง?
Chagai Friedlander

11

นี่เป็นเพียงวิธีแก้ปัญหาอื่น

  1. สำหรับ 'Foreground Layer' ให้เลือก 'Asset type' เป็นข้อความและลบข้อความเริ่มต้นในช่องข้อความ

เรียกดูเส้นทางรูปภาพของคุณ

  1. สำหรับ "เลเยอร์พื้นหลัง" ให้เลือก "ประเภทเนื้อหา" เป็นภาพจากนั้นเลือกเส้นทางของภาพที่คุณต้องการเป็นไอคอน

ใส่คำอธิบายภาพที่นี่

และคุณพร้อมที่จะไป


วิธีแก้ปัญหาที่ง่ายมาก ขอบคุณมาก ๆ! ฉันได้ทดสอบบน Android Studio 3.6 และสิ่งหนึ่งที่ต้องเพิ่มก็คือมันทำให้ฉันมีข้อผิดพลาดเมื่อมีค่าว่างของข้อความ Foreground สิ่งที่ฉันทำก็แค่เพิ่มช่องว่างตรงนั้นแล้วมันก็ใช้ได้ และเพิ่มอีกบางส่วน! หลังจากนั้นฉันพบปัญหาอย่างหนึ่งว่าเมื่อฉันเพิ่ม mipmap เสร็จแล้วและรันโปรเจ็กต์ของฉันมีโลโก้ Android แทนที่โลโก้ของฉันและฉันก็แก้ไขโดยการแก้ไขไฟล์ xml ไอคอน mipmap โดยลบบรรทัดแท็กเบื้องหน้าออก หวังว่ามันจะช่วยใครสักคน
Feroz Khan

ยอดเยี่ยมมาก!
ikerfah


1

ขั้นแรกสร้างไอคอนตัวเรียกใช้งาน(Adaptive and Legacy)จาก Image Asset:

เลือกimageชั้นพื้นหลังและปรับขนาดให้เหลือ 0% หรือ 1% และในมรดกชุดแท็บไปshapenone

จากนั้นลบโฟลเดอร์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) จะเพิ่มพื้นหลังสีขาวโดยอัตโนมัติและไม่สามารถทำอะไรได้


0

นี่คือขั้นตอนที่ฉันใช้เพื่อทำให้ภาพโปร่งใส:

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 (คลิกขวา)> ใหม่> Image Asset เนื้อหารูปภาพ

3- ในเส้นทางเลือกตำแหน่งของภาพโปร่งใสที่คุณดาวน์โหลดจากเว็บไซต์ออนไลน์และเลือกตัวเลือกอื่น ๆ ตามที่แสดงจากนั้นถัดไปจากนั้นเลือกเสร็จสิ้น ขนาดที่แตกต่างกัน 5 ขนาดของรูปภาพ mdpi (48 × 48), hdpi (72 × 72), xhdpi (96 × 96), xxhdpi (144 × 144) และ xxxhdpi (192 × 192) จะถูกสร้างขึ้นในres / mipmap-โฟลเดอร์ ความหนาแน่นการกำหนดค่าเนื้อหารูปภาพ

4- หากคุณต้องการขนาด (ขนาด) ที่แตกต่างจากด้านบนคุณสามารถใช้เว็บไซต์นี้http://nsimage.brosteins.com/เพื่ออัปโหลดรูปภาพ PNG ของคุณที่มีขนาดใหญ่ที่สุดที่จะใช้ใน xxxhdpi หลังจากอัปโหลดคุณสามารถดาวน์โหลดไฟล์ซิปที่มีห้าขนาดที่แตกต่างกันของภาพในความละเอียด / drawable- หนาแน่นโฟลเดอร์ ใส่คำอธิบายภาพที่นี่


-1

เมื่อใช้ android 3.0.1 ฉันสังเกตเห็นพฤติกรรมแปลก ๆ นี้ (วิธีแก้ปัญหา) อันดับแรก: ในเลเยอร์พื้นหลังใน source_asset เปลี่ยน asset_type จากรูปภาพเป็นสีและเปลี่ยนกลับเป็นรูปภาพ สอง: เปิดใช้งานการตัดแต่งในการปรับขนาดจากนั้นปรับขนาดเป็นเปอร์เซ็นต์เล็กน้อยและจะทำงานได้อย่างสมบูรณ์ PS: ถ้าคุณไม่ได้ทำขั้นตอนแรกการปรับขนาดจะไม่ส่งผลกระทบ และหากใครมีคำอธิบายสำหรับเรื่องนี้โปรดให้ ขั้นตอน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.