1

我有我的项目的设计。它适用于分辨率为 1440 像素 x 2560 像素和 493 ppi 的 Nexus 6。我的设计 - 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 按钮才能看起来和设计?

4

2 回答 2

2

希望这会有所帮助:让您的应用为 Nexus 6 和 Nexus 9 做好准备

连结 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 为单位)的屏幕,如果您想指定一个以 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)。

于 2015-04-01T04:11:57.483 回答
1

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

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

以下是文档:http: //developer.android.com/reference/android/util/DisplayMetrics.html

然后是一些获取指标的“简单”实现: 如何在应用程序类中获取屏幕显示指标

在android中以编程方式获取屏幕密度?

于 2015-04-01T04:34:27.080 回答