32

根据 android 图标设计指南(这里,见表 #1),开发者需要提供下一个尺寸的状态栏图标:

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

虽然我的测量结果显示状态栏的高度始终为 25 dp,并且需要 25x25dp 的图标。这转化为这些尺寸:

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

这是我获得这些尺寸的方法:

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

我已经在几款 Android 手机和模拟器上确认了计算尺寸。

问题基本上是:为什么指南使用的尺寸与状态栏实际使用的尺寸不同?

PS 由于精确的像素控制要求,我实际上需要打破准则。我只是被这种事态弄糊涂了。所以解释为什么会这样真的对我有帮助。

4

2 回答 2

55

其实是

  • 18像素(ldpi)
  • 24 像素 (mdpi)
  • 36像素(高清)
  • 48像素(xhdpi)
  • 72px(xxhdpi)
  • 96px(xxxhdpi)

它是 24dp 大小,带有 2dp 填充,表示 20dp 内容

像素 = dp * (dpi/160)

于 2012-07-18T07:36:19.293 回答
10

警告:无论答案是否正确,现在看来都不正确。有关当前指南,请参阅https://www.google.com/design/spec/style/icons.html

这似乎是一个错误。(请注意,截至 2010 年 12 月 4 日,他们还交叉引用了该页面上的图 4 和图 5。)

正如 Lex 指出的那样,它们在“状态栏图标”部分的下方有正确的数字。

他们还规定了一个 2 像素的“安全框”,在 25x25 的所有侧面都必须适合您的图标的形状,尽管看起来可以突出一些与锯齿相关的东西,但仅限于侧面,为此图标类型。(这意味着您真的想以该尺寸瞄准 21x21。)

于 2010-12-04T22:56:11.477 回答