Android 针对导致问题的不同密度优化应用程序

Android 针对导致问题的不同密度优化应用程序,android,android-layout,nine-patch,Android,Android Layout,Nine Patch,我正在为一个学校项目开发一个应用程序,我已经完成了。剩下要做的就是针对不同的屏幕优化应用程序。在开发过程中,我一直只在一台设备上测试该应用程序——三星Galaxy Nexus(我的手机) 我在photoshop中制作的每个布局元素最初都是为我的手机创建的,所以当它在三星Galaxy Nexus上运行时,它看起来最棒。所以我做了一些研究,偶然发现了这个网站。我的手机(三星Galaxy Nexus)具有xhdpi密度,因此我的逻辑告诉我,我制作的布局元素是xhdpi,但我将它们保存在手动制作的“可绘

我正在为一个学校项目开发一个应用程序,我已经完成了。剩下要做的就是针对不同的屏幕优化应用程序。在开发过程中,我一直只在一台设备上测试该应用程序——三星Galaxy Nexus(我的手机)

我在photoshop中制作的每个布局元素最初都是为我的手机创建的,所以当它在三星Galaxy Nexus上运行时,它看起来最棒。所以我做了一些研究,偶然发现了这个网站。我的手机(三星Galaxy Nexus)具有xhdpi密度,因此我的逻辑告诉我,我制作的布局元素是xhdpi,但我将它们保存在手动制作的“可绘制”文件夹中。可绘制hdpi、可绘制xhdpi等文件夹一直是空的

现在我使用该工具为其他密度创建所有布局元素。然后我删除了drawable文件夹,并将布局元素放在所有四个density文件夹中:

可拉伸hdpi

可拉伸低密度聚乙烯

可拉伸mdpi

可拉伸xhdpi


因此,可绘制的xhdpi现在包含原始布局元素,其余文件夹包含新创建的布局元素。但是,现在当我在手机上运行应用程序时,布局被破坏-->所有东西看起来都要小得多。所以我猜我的手机从其他地方加载了布局元素,而不是可绘制的xhdpi。为什么呢?是网站错了,我的手机不是xhdpi,还是我做错了什么?

花点时间浏览一下Android开发者的文档。在为Android应用程序创建绘图时,基本大小是mdpi,密度比是1,那么xhdpi、hdpi和ldpi的密度分别是2、1.5和0.75。

花一点时间浏览Android开发者的文档。在为Android应用程序创建可绘制文件时,基本大小为mdpi,密度比为1,那么xhdpi、hdpi和ldpi的密度分别为2、1.5和0.75。

当您将它们放在基本
drawable
文件夹中时,系统假设它们实际上是mdpi资源,并将其放大两倍。因此,现在您在
可绘制xhdpi
中有了相同的图像,它不再缩放它们


基本上,您需要将图像缩放到2倍,然后再次通过该工具运行它们。在使用该工具之前,您可能需要对它们进行一些修饰,因为放大通常很难看。

当您将它们放在base
drawable
文件夹中时,系统假设它们实际上是mdpi资源,并将其放大两倍。因此,现在您在
可绘制xhdpi
中有了相同的图像,它不再缩放它们


基本上,您需要将图像缩放到2倍,然后再次通过该工具运行它们。在使用该工具之前,您可能需要对它们进行一些修饰,因为放大通常很难看。

我知道这一点。但我被特别要求尝试在xhdpi中创建布局元素。所以当我把它们插入这个“工具”时,它不会降低质量。由于我的手机是xhdpi,而且我的布局元素与我的手机完美配合,所以我认为它们是xhdpi。我想我错了,我知道这一点。但我被特别要求尝试在xhdpi中创建布局元素。所以当我把它们插入这个“工具”时,它不会降低质量。由于我的手机是xhdpi,而且我的布局元素与我的手机完美配合,所以我认为它们是xhdpi。我想我错了。非常感谢,这正是我想要的答案!非常感谢,这正是我想要的答案!