🖼️

【Android】アイコン画像の拡大表示を防ぐ方法

2024/07/28に公開

Flutter製アプリのアイコンをflutter_launcher_iconsでカスタマイズ時、デフォルトだとAndroidのアイコン画像だけ拡大表示され、画像全体をアイコン上に表示することができない問題があります。

本記事は上記問題を解決する方法について説明していきます。
(Flutter前提ですが、内容としてはAndroidのネイティブ側でも共通だと思います。)

解決方法

 <?xml version="1.0" encoding="utf-8"?>
 <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
   <background android:drawable="@color/ic_launcher_background"/>

-   <foreground android:drawable="@drawable/ic_launcher_foreground"/>

+   <foreground>
+     <inset
+       android:drawable="@drawable/ic_launcher_foreground"
+       android:inset="16%" />
+  </foreground>
 </adaptive-icon>

引用元
https://github.com/fluttercommunity/flutter_launcher_icons/issues/96#issuecomment-1325387518

解説

foreground icon が拡大表示されている』 ことが問題のため、iconに対しpaddingを設けてあげることで解決します。
そのため、foregroundに対し、insetタグ(4辺に余白を設定)を設定し、画像全体を表示させることができます。

GitHubで編集を提案

Discussion