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

标签 android android-layout nine-patch

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

我在 photoshop 中制作的每个布局元素最初都是为我的手机创建的,因此该应用程序在 Samsung Galaxy Nexus 上运行时效果最佳。所以我做了一些研究并偶然发现了this网站。我的手机(三星 Galaxy Nexus)具有 xhdpi 密度,所以我的逻辑告诉我,我制作的布局元素是 xhdpi,但我将它们保存在手动制作的“drawable”文件夹中。 Drawable-hdpi、drawable-xhdpi 等文件夹一直是空的。

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

drawable-hdpi

drawable-ldpi

drawable-mdpi

drawable-xhdpi

所以 drawable-xhdpi 现在包含原始布局元素,其余文件夹包含新制作的布局元素。但是,现在当我在手机上运行该应用程序时,布局被破坏了 --> 一切看起来都小了很多。所以我猜想我的手机从 drawable-xhdpi 之外的其他地方加载了布局元素。这是为什么?是网站错了还是我的手机不是 xhdpi 还是我做错了什么?

最佳答案

当您将它们放在基础 drawable 文件夹中时,系统假设它们实际上是 mdpi 资源并将它们放大到两倍大。所以,既然您在 drawable-xhdpi 中有相同的图像,它就不会缩放它们。

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

关于android - 针对导致问题的不同密度优化应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19099019/

相关文章:

android - Android Fragments 中方向改变时的布局改变

Android:用于布局的三星 Galaxy S3 屏幕尺寸

Android 9 补丁图像按钮未按预期缩放

android - Css 媒体查询方向 :landscape in android web view not working properly

android - "zoom"CSS 属性可以安全地用于移动设备吗?

android - 如何在开发人员控制台中启用 "Google Maps Android API v2"

Android - 一次动画边距/更改多个 View 的位置

android - 9 补丁背景渲染与 Artifact 和裁剪

android - 使用.9.png工具制作渐变png

android - 显示空白的沉浸式模式