Androidアイコン(およびドラッグの長さなどの他のUI要素)は、で測定されdp
ます。A dp
は、デバイス/密度に依存しないピクセルです。160 dpi画面の1ピクセルに1 dp
相当します。ただし、他の画面密度に変換するには、密度係数を掛ける必要があります。そのため、ほとんどのアイコンに複数の画像を指定することをお勧めします。
たとえば、ステータスバーで使用される通知アイコンは24x24 dpとして指定され、1 dpのマージンがあります(したがって、実際のアイコンは22x22 dpの光学正方形のみを占有しますが、AAの一部はその1 dpマージン/セーフフレームに流れ込むことができます)。24 dpを実際のピクセルサイズに変換するには、次の大まかな計算が使用されます。
display density dp units * scale = px units
ldpi ~120 dpi 24x24 dp * .75 = 18x18 px
mdpi ~160 dpi 24x24 dp * 1.0 = 24x24 px
hdpi ~240 dpi 24x24 dp * 1.5 = 36x36 px
xhdpi ~320 dpi 24x24 dp * 2.0 = 48x48 px
xxhdpi ~480 dpi 24x24 dp * 3.0 = 72x72 px
中間の表示密度tvdpi
(〜213 dpi)もあり、その間にmdpi
とのhdpi
倍率が1.33
ありますが、これはあまり一般的ではありません。Androidのドキュメントで推奨されているのは3:4:6:8:12
、最も一般的な表示密度に対して事前にスケーリングされたビットマップ画像(通常はPNG)を提供する場合は、スケーリング率に従うことです。
通知で使用される大きなアイコンのdpサイズを指定する場所はどこにもありませんが、通常の受信トレイビューの各通知の高さは64 dpです。つまり、表示されるアイコン/画像の最大サイズは次のようになります。
ldpi: 48x48 px
mdpi: 64x64 px
hdpi: 96x96 px
xhdpi: 128x128 px
xxhpdi: 192x192 px
Androidのストックアイコンの画像サイズを正確に知りたい場合は、Androidアイコンテンプレートパックv4.0から確認できます。
このSOの質問も参照してください:ハニカム通知:largeIcon
適切なサイズに設定する方法?