Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我在Android屏幕密度方面遇到了一些问题_Android_Screen - Fatal编程技术网

我在Android屏幕密度方面遇到了一些问题

我在Android屏幕密度方面遇到了一些问题,android,screen,Android,Screen,我目前正处于为Android开发应用程序的开始阶段。 我知道有3种不同的屏幕密度:HDPI、MDPI和LDPI。我知道大多数手机使用800x480屏幕分辨率,对于老一代设备,使用480x320屏幕分辨率。我需要知道的是,这些屏幕分辨率属于哪个密度类别?当我将为800x480制作的图像放入MDPI文件夹时,当我运行应用程序时,它们会变得模糊 有人能告诉我如何正确地为这些不同的屏幕分辨率和密度创建图像吗?密度不仅与屏幕大小(以像素为单位)有关,还与屏幕大小(以英寸为单位)有关。您可以使用800x48

我目前正处于为Android开发应用程序的开始阶段。 我知道有3种不同的屏幕密度:HDPI、MDPI和LDPI。我知道大多数手机使用800x480屏幕分辨率,对于老一代设备,使用480x320屏幕分辨率。我需要知道的是,这些屏幕分辨率属于哪个密度类别?当我将为800x480制作的图像放入MDPI文件夹时,当我运行应用程序时,它们会变得模糊


有人能告诉我如何正确地为这些不同的屏幕分辨率和密度创建图像吗?

密度不仅与屏幕大小(以像素为单位)有关,还与屏幕大小(以英寸为单位)有关。您可以使用800x480分辨率,但如果屏幕为10',则不会使用HDPI


并没有官方标准,因为密度是每英寸像素数,而不是屏幕分辨率。但是任何分辨率为800x480的屏幕都很可能是从hdpi文件夹中绘制的,这就是为什么你会看到它模糊的原因。找出目标屏幕密度,并使用以下等式:

px=dp*筛网密度/160


其中screen_density是设备的屏幕密度。

Olegas链接的文档包含设置布局所需的所有信息

基本上,您希望为每个屏幕大小创建以厘米或英寸为单位的布局。为此,您需要创建不同的文件夹,并将它们命名为res/layout small、res/layout normal、res/layout large和res/layout/xlarge

您还需要为dpi中的每个屏幕密度创建不同大小的位图。同样,您需要创建几个备选文件夹:res/drawable ldpi、res/drawable mdpi和res/drawable hdpi

Android操作系统将根据设备规格决定使用哪一组布局和哪一组绘图。本节介绍了密度范围:


要了解所需位图的大小,您可以遵循图标设计指南:。

我认为解决此问题的最简单方法,据我所知,基本Android源代码也做同样的事情,只需生成一个高清晰度图像并将其放入HDPI文件夹,然后让Android为您处理下采样。仅当降采样图像没有足够的对比度或看起来不对劲时,才需要提供低分辨率图像。我可能错了,但我还没有找到一个看起来不正确的屏幕组合,至少在图像方面是这样。布局,嗯,那是另外一回事。

我的CLIQ是一个3.2 320x480屏幕。Nexus One的屏幕为3.7 480x320。我在MDPI文件夹中有适合我的CLIQ的图像,在HDPI文件夹中有适合NexusOne的图像。图像在我的CLIQ上显示得很好,但在我的姜饼模拟器中,我认为它是从mdpi文件夹中绘制的,因此图像被拉伸且模糊。nexus one不是480x320。nexus one的密度为800x480和240。我有一个。关于模拟器,这取决于您运行的API版本。