Jelly BeanでのAndroid通知用の高解像度の大きなアイコンの作成に関する問題


11

Android通知用の美しい高解像度グラフィックを作成しようとしていますが、いくつかの問題が発生しています。Jelly Beanでは、通知バナー(下記の#2大きいアイコンを参照)の左側に、大きなアイコン(ここでの通知設計ガイドラインを参照)の新しい場所があります。

ここに画像の説明を入力してください

純正のAndroidアイコンはすべて美しく、高解像度ですが、残念ながら、illustrator / photoshopで作成しているアイコンは、高解像度ディスプレイで鮮明に表示されません。

私のファイルは96 x 96ピクセルですが、これが高解像度アイコンに適したサイズではないことを心配しています。また、これらの最適なサイズ設定に関する適切な情報がどこにもありません。

どんな助けでも大歓迎です!

回答:


18

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適切なサイズに設定する方法?


3
Androidの設計ドキュメントの一部を書き直してください!情報はすべて揃っていますが、非常に効果的に圧縮されていません。ドキュメントはほとんどの場合素晴らしいですが、ここでは失敗しました。明快で簡潔な説明をありがとうございました!
ダニエル・スミス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.