将资源(可绘制)组织成 Android Studio 项目的一些疑问

Some doubts related the resource (drawable) organization into an Android Studio project

我是 Android 的新手,我对如何在我的项目中处理图像有以下疑问。

我知道我必须将图像放入 /res/drawable/ 目录到我的项目中。

为了下订单,我尝试将这些图像拆分到不同的子目录中。

例如,我创建了这个子目录:/res/drawable/header/,其中包含与 header 相关的所有图像我的申请。

但在 XML 时我会:

<ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:scaleType="fitStart"
        android:layout_height="250dp"
        android:src="@drawable/header/carbonara"/>

Android Studio 在这一行给我一个错误:

android:src="@drawable/header/carbonara"

对我说:'/' 不是有效的资源名称字符

所以在 Android 我真的无法为我的图像创建结构化且组织良好的子文件夹?

另一个疑问与 drawable 文件夹的不同版本有关。

我知道我可以创建这样的结构:

res
    drawable-hdpi
    drawable-ldpi
    drawable-mdpi
    .............
    .............
    .............

其中每个 drawable* 包含具有不同像素密度的相同图像的特定版本。

我可以使用 Android Studio 从 drawable 文件夹(包含我的原始图像)开始自动生成这些文件夹,还是让我手动创建这些文件夹并手动更改使用类似 Photoshop 的像素密度?

如果您想创建不同版本的可绘制对象,请将视图从 android 更改为项目。然后导航到 Project name->app->src->main->res 并为每个屏幕密度创建不同的目录,如 hdpi、mdpi 等。您可以从 mipmap 中参考。

p.s。 :对于可绘制对象的自动缩放,您可以考虑使用 svg Link: Developer android link

你可以完成这个 Link -https://romannurik.github.io/AndroidAssetStudio/nine-patches.html

在这里您可以上传您的图像并生成具有不同像素密度的图像。 Android Studio 不支持自动生成可绘制图像..!