【Interface&navigation】自適應圖標(22)

Android 8.0(API級別26)引入了自適應啓動器圖標,可以在不同的設備模型中顯示各種形狀。例如,自適應啓動器圖標可以在一個OEM設備上顯示圓形形狀,並在另一個設備上顯示一個鼠標。每個設備OEM都提供一個掩碼,然後系統使用該掩碼渲染具有相同形狀的所有自適應圖標。自適應啓動器圖標也用於快捷方式,“設置”應用程序,共享對話框和概覽屏幕。

【Interface&navigation】自適應圖標(22)
圖1.自適應圖標支持各種設備,這些設備因設備而異。

您可以通過定義包含背景和前景的2個圖層來控制自適應啓動器圖標的外觀。您必須提供圖標圖層作爲可繪製的圖形,而不使用圖標輪廓周圍的蒙版或背景陰影。

圖2.使用2層和掩碼定義自適應圖標。

在Android 7.1(API級別25)及更早版本中,啓動器圖標的大小爲48 x 48 dp。您現在必須使用以下準則調整圖標圖層的大小:

兩層的尺寸必須爲108 x 108 dp。
圖標的內部72 x 72 dp出現在蒙版視口中。
系統在4個側面的每一側保留外部18 dp,以創建有趣的視覺效果,例如視差或脈衝。

注意:受支持的啓動器會生成動畫視覺效果。視覺效果可能因發射器而異。

注意:設備OEM可以指定一個掩模,該掩模可能包含沿着形狀的某些點短至33 dp的半徑。
【Interface&navigation】自適應圖標(22)

【Interface&navigation】自適應圖標(22)
圖3.自適應圖標支持各種視覺效果。

警告:如果未使用必要的圖層更新啓動器圖標,則圖標與系統UI顯示的其他圖標不一致,並且不支持視覺效果。

要了解如何使用Android Studio創建自適應圖標,請參閱 使用Image Asset Studio創建應用程序圖標

在XML中創建自適應圖標


要使用XML嚮應用添加自適應圖標,請首先更新android:icon應用清單中的 屬性以指定可繪製資源。您還可以使用該android:roundIcon 屬性定義圖標可繪製資源。android:roundIcon如果您需要圓形蒙版的不同圖標資源,則必須僅使用該屬性,例如,徽標的品牌標識依賴於圓形形狀。以下代碼段說明了這兩個屬性:

<application
    …
    android:icon="@mipmap/ic_launcher"
    android:roundIcon="@mipmap/ic_launcher_round"
    …>
</application>

接下來,您必須在應用中創建替代的可繪製資源,以便與Android 8.0(API級別26)一起使用res/mipmap-anydpi/ic_launcher.xml。然後,您可以使用該<adaptive-icon>元素爲圖標定義前景和背景圖層drawable。的<foreground>和<background> 內部元件都支持android:drawable屬性。

<adaptive-icon>
    <background android:drawable="@color/ic_background"/>
    <foreground android:drawable="@mipmap/ic_foreground"/>
</adaptive-icon>

您還可以將背景和前景drawable定義爲元素,方法是將它們包含在元素<foreground>和<background>元素中。

如果要將相同的蒙版和視覺效果應用於常規自適應啓動器圖標的快捷方式,請使用以下技術之一:

對於靜態快捷方式,請使用該<adaptive-icon>元素。
對於動態快捷方式,請在createWithAdaptiveBitmap() 創建方法時調用該 方法。
有關快捷方式的詳細信息,請參閱 應用程序快捷方式。

其他資源


關設計和實現自適應圖標的其他信息,請閱讀Google設計人員和開發人員Nick Butcher撰寫的這一系列文章:

瞭解Android自適應圖標
設計自適應圖標
實現自適應圖標

聯繫我

QQ:94297366
微信打賞:https://pan.baidu.com/s/1dSBXk3eFZu3mAMkw3xu9KQ

公衆號推薦:

【Interface&navigation】自適應圖標(22)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章