Android simgeleri (ve sürükleme uzunlukları gibi diğer UI öğeleri) olarak ölçülür dp
. A dp
, cihazdan / yoğunluktan bağımsız bir pikseldir . 160 dpi ekranda 1 piksele1 dp
eşdeğerdir . Ancak diğer ekran yoğunluklarına dönüştürmek için bir yoğunluk faktörü ile çarpmanız gerekir. Bu nedenle , çoğu simge için genellikle birden fazla görüntü sağlanması önerilir .
Örneğin , durum çubuğunda kullanılan bildirim simgeleri 1 dp kenar boşluğuyla 24x24 dp olarak belirtilir (bu nedenle gerçek simge yalnızca 22x22 dp optik kareyi alır, ancak AA'nın bir kısmı bu 1 dp kenar boşluğuna / kasaya akabilir ). 24 dp'yi gerçek piksel boyutlarına dönüştürmek için bu kaba hesaplamalar kullanılır:
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
Orada olarak adlandırılan bir ara görüntü yoğunluğu da var tvdpi
arasında yer almaktadır (~ 213 dpi) mdpi
ve hdpi
ve bir ölçek faktörüne sahiptir 1.33
, ama bu çok daha az yaygındır. Android dokümanlarının önerdiği şey 3:4:6:8:12
, en yaygın ekran yoğunlukları için önceden ölçeklendirilmiş bitmap görüntüler (genellikle PNG'ler) sağlarken bir ölçeklendirme oranı izlemenizdir .
Onlar bildirimler kullanılan büyük simgeler için dp boyutu belirtmek nerede yerde göremiyorum ama her bildirimin yüksekliği normal bir gelen kutusundan olan 64 dp . Bu, gösterilen simgeler / resimler için maksimum boyutun olacağı anlamına gelir:
ldpi: 48x48 px
mdpi: 64x64 px
hdpi: 96x96 px
xhdpi: 128x128 px
xxhpdi: 192x192 px
Android'in stok simgelerinin tam olarak hangi görüntü boyutlarını olduğunu öğrenmek istiyorsanız, Android Icon Templates Pack, v4.0'dan öğrenebilmeniz gerekir .
Ayrıca şu SO sorusuna bakın: Petek bildirimleri: largeIcon
Doğru boyuta nasıl ayarlanır ?