32

According to android icon design guidelines (here, see table #1), developer needs to provide status bar icons of next sizes:

Status Bar  24 x 24 px (LDPI)  32 x 32 px (MDPI)  48 x 48 px (HDPI)

While my measurements show that status bar always has 25 dp in height and expects icons of 25x25dp. This translates to these sizes:

Status Bar  19 x 19 px (LDPI) 25 x 25 px (MDPI)  38 x 38 px (HDPI)

Here is how I get those size:

25dp * 0.75 = 18.75 => 19px (LDPI)
25dp *  1   = 25    => 25px (MDPI)
25dp *  1.5 = 37.5  => 38px (HDPI)

I have confirmed calculated sizes on several Android phones and on emulators.

The question basically is: why guidelines use sizes different from what is really used by status bar?

P.S. I actually need to break guidelines due to precise pixel control requirements. And I just was confused by this state of affairs. So explanation of why this the way it is would really help me.

Brian Tompsett - 汤莱恩
  • 5,195
  • 62
  • 50
  • 120
inazaruk
  • 72,103
  • 23
  • 181
  • 156
  • 2
    No idea why the doc is wrong. Maybe it was correct long ago before a Google designer decided to knock 7 pixels off the status bar's height. Certainly the status bar icons in the SDK's android.jar are 25px for MDPI and 38px for HDPI, so your observations look 100% correct to me. – Reuben Scratton Nov 24 '10 at 10:22
  • I think that is just copy/paste error cause in chapter Status bar icon (http://developer.android.com/guide/practices/ui_guidelines/icon_design.html#statusbarstructure) 25x25 size spesified. – Lex Nov 30 '10 at 12:10

2 Answers2

55

Actually it's

  • 18px(ldpi)
  • 24px(mdpi)
  • 36px(hdpi)
  • 48px(xhdpi)
  • 72px(xxhdpi)
  • 96px(xxxhdpi)

it's 24dp size with a 2dp padding , means 20dp content

px = dp * (dpi/160)

F.O.O
  • 4,024
  • 4
  • 20
  • 31
user1531030
  • 577
  • 4
  • 4
10

Warning: regardless of whether or not the answer was correct when written, it appears not to be correct now. See https://www.google.com/design/spec/style/icons.html for the current guidelines.

It just seems to be an error. (Note that as of 2010-12-04, they've also crossed their references to figures 4 and 5 on that page.)

As Lex points out, they have the correct number further down, in the "Status bar icon" section.

They also dictate a 2-pixel "safeframe" on all sides at 25x25 which the shape of your icon must fit within, though it seems that it is okay to have some aliasing-related stuff stick out, but only on the sides, for this type of icon. (Meaning that you really want to aim for 21x21 at that size.)

SamB
  • 8,218
  • 5
  • 44
  • 52
  • 2
    Please note that dp units mentioned on Android website are not pixels. See https://developer.android.com/design/style/iconography.html for details on how dp translates to pixels. So 24x24 dp are **not** always 24x24 pixels and in this answer instead of pixels, dp should be mentioned. – DavisNT Aug 10 '13 at 10:47
  • Android website has since been updated and no longer references pixel dimensions of the 24dp icons, if you're looking here for exact export values. You can use a web tool like https://pixplicity.com/dp-px-converter/ to calculate them for you, or see the answer below. – mix3d Feb 23 '16 at 22:22