【问题标题】:I can not deal with non-standard resolution我无法处理非标准分辨率
【发布时间】:2015-06-05 14:49:30
【问题描述】:

我有我的项目的设计。它适用于 Nexus 6,分辨率为 1440px x 2560px 和 493 ppi。我的设计 - 1440 像素 x 2560 像素。

我知道:

ldpi    120 dpi
mdpi    160 dpi
tvdpi   213 dpi
hdpi    240 dpi
xhdpi   320 dpi
xxhdpi  480 dpi
xxxhdpi 640 dpi

我有 - 493 ppi。这是什么?我在设计上有一个大小为 100x50 像素的按钮。 在设计中需要多少 dpi 的按钮才能看起来和设计?

【问题讨论】:

  • 只有一种解决方案,尝试不同尺寸并在您的手机中运行。检查看起来不错的,最后使用那个尺寸。
  • 我在做。但手机的其余部分已经在 dpi 中显示,一切都很好。

标签: android android-resolution


【解决方案1】:

希望这会有所帮助:Getting Your Apps Ready for Nexus 6 and Nexus 9

Nexus 6

屏幕

Nexus 6 拥有令人印象深刻的 5.96 英寸 Quad HD 屏幕显示 分辨率为 2560 x 1440 (493 ppi)。这转换为 ~ 730 x 410 dp (密度无关像素)。

检查您的资产

它的量化密度为 560 dpi,介于 xxhdpi 和 xxxhdpi 主要密度存储桶。对于 Nexus 6, 平台将缩小 xxxhdpi 资产,但如果不是 可用,那么它将扩大 xxhdpi 资产。

编辑:

考虑这条线

2560 x 1440 (493 ppi)。这转换为 ~ 730 x 410 dp(密度 独立像素)

这意味着比例因子是 2560/730 = 1440/410 ~ 3.5

对于一个宽度为 410,高度为 730 的屏幕,如果你想指定一个屏幕宽度为 dp 的一半的按钮,宽度应该是 410/2 = 205 dp,即 717px = 205*3.5(宽度在 dp * 比例因子)

在 410 x 730 dp 的屏幕尺寸上,尺寸为 100 像素 x 50 像素的按钮将转换为 28 x14 dp (100/3.5 * 50/3.5)。

【讨论】:

  • 优秀的文章。这很酷。但另一个问题是一样的。如何指定正确的间距、高度、按钮等?如果我在 dpi 中指出所有画歪了
  • 我对 LG G3 mini (294 dpi) 有一些问题
  • 我觉得我很愚蠢。我的设计 1440x2560 - xxxhdpi。 100px(xxxhdpi) = 25dpi。 50px(xxxhdpi) =12.50dpi。我有这些值,它们适用于除 nexus 6 和 LG G3 mini 之外的所有手机。如果我指向 28 x14 dp,那么其余的将都是弯曲的手机
  • 您可以为导致问题的两部手机创建单独的dimens.xml 文件
  • 你能举个例子来说明怎么做吗?
【解决方案2】:

如果您真的关心正确的显示分辨率(听起来像您),那么您应该永远依赖通用文件夹。这些文件夹用于一般用途 - 不用于定制或高价值展示。

您应该使用displayMetrics 来测量屏幕尺寸并选择合适的资源,甚至可以进行自定义图像缩放。围绕这组属性有很多资源,但基本上它允许您解决您面临的问题:为高度自定义的显示设置适当的边距、填充、分辨率、布局等。

这里是文档: http://developer.android.com/reference/android/util/DisplayMetrics.html

然后是一些获取指标的“简单”实现: How to get screen display metrics in application class

getting the screen density programmatically in android?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-09
    • 2012-01-29
    • 2011-11-11
    • 1970-01-01
    相关资源
    最近更新 更多