Ikon Android (dan elemen UI lainnya, seperti panjang seret) diukur dalam dp
. A dp
adalah pixel perangkat / kepadatan-independen . 1 dp
setara dengan 1 px pada layar 160 dpi . Tetapi untuk mengonversi ke kepadatan layar lain, Anda perlu mengalikannya dengan faktor kepadatan. Jadi pada umumnya disarankan agar banyak gambar disediakan untuk sebagian besar ikon .
Misalnya, ikon pemberitahuan yang digunakan di bilah status ditetapkan sebagai 24x24 dp, dengan margin 1 dp (jadi ikon sebenarnya hanya membutuhkan persegi optik 22x22 dp, meskipun beberapa AA dapat beralih ke margin 1 dp / safeframe ). Untuk mengonversi 24 dp ke ukuran piksel aktual, perhitungan kasar ini digunakan:
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
Ada juga kepadatan tampilan menengah yang disebut tvdpi
(~ 213 dpi) yang berada di antara mdpi
dan hdpi
dan memiliki faktor skala 1.33
, tetapi ini jauh lebih jarang terjadi. Apa yang direkomendasikan oleh dokumen Android adalah Anda mengikuti 3:4:6:8:12
rasio penskalaan saat memberikan gambar bitmap yang telah ditentukan (biasanya PNG) untuk kerapatan tampilan yang paling umum.
Saya tidak melihat di mana pun mereka menentukan ukuran dp untuk ikon besar yang digunakan dalam pemberitahuan, tetapi ketinggian setiap pemberitahuan dalam tampilan kotak masuk normal adalah 64 dp . Jadi itu berarti ukuran maksimal untuk ikon / gambar yang ditampilkan adalah:
ldpi: 48x48 px
mdpi: 64x64 px
hdpi: 96x96 px
xhdpi: 128x128 px
xxhpdi: 192x192 px
Jika Anda ingin tahu persis apa ukuran gambar ikon stok Android, Anda harus bisa mengetahui dari Paket Ikon Android Template, v4.0 .
Lihat juga pertanyaan SO ini: Pemberitahuan Honeycomb: Bagaimana mengatur largeIcon
ke ukuran yang tepat?