簡體   English   中英

如何使Android應用程序的圖標背景透明?

[英]How to make the icon background of an Android app transparent?

PNG圖像將用作圖標前景,並且背景應完全透明。

使用Android Studio > New Image Asset > Configure Image Asset dialog ,實際上已經嘗試了非常多種背景選項,包括從路徑中完全刪除文件並刪除ic_launcher.xmlic_launcher_round.xml的背景標簽。 。

在此向導中從路徑中刪除文件並從XML文件中刪除標簽幾乎可以解決問題,但是仍然有一個模糊的黑色輪廓作為背景(〜alpha = 20%)。 在查看設備啟動器上的圖標時,“背景層”的所有其他選項都會在前景圖像后留下純白色或黑色背景。

許多應用設法僅在其圖標上具有前景,因此這是可能的。 我在這里做錯了什么?

更新:感謝您的快速評論! 我嘗試了作為答案提供的兩個解決方案,結果相同。 屏幕截圖按建議上傳。

僅在向導中更新Legacy圖標是不夠的,因為這只會更改Legacy圖標的格式。 還需要更新的“自適應”圖標。 即使背景設置為完全透明的正方形png,Android Studio也會將其更改為白色。 如果完全刪除了背景文件,則向導會允許完成操作,但是Android Studio使用稍微不透明的黑色背景,如圖所示。 關於上傳的圖片,前景后面應該沒有任何東西,在這種情況下,它應該是完全灰色的,沒有任何可見的圓圈。

運行API 25的設備的屏幕截圖

方法1:

如果您有png,只需將其復制並粘貼到drawable中,然后從清單中引用圖像名稱即可。

<application
        android:allowBackup="true"
        android:icon="@mipmap/new_image"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/new_image"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        ....
        </application>

方法2:

轉到文件>新建>圖像資產 ,請確保選擇png圖像(具有透明背景)並將背景形狀設置為無。

在此處輸入圖片說明

首先,您有一個背景圖像來獲取透明圖標,而沒有任何背景圖像就不能使圖標透明。

如果您希望獲得透明的圖像,則只需使用一些照片編輯器即可。

獲取imageButton的視圖

View v = findViewById(R.id.myImageBtn);

從應用程序中獲取圖標,例如Chrome

pkgnam="com.android.chrome";
Intent intent1 = ctx.getPackageManager().getLaunchIntentForPackage(pgknam);
Drawable myIcon = getPackageManager().getActivityIcon(intent1);

將背景圖標設置為與前景圖標相同

v.setForeground(myIcon);
v.setBackground(myIcon);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM