【问题标题】:Some doubts related the resource (drawable) organization into an Android Studio project一些疑问将资源(drawable)组织到一个Android Studio项目中
【发布时间】:2016-06-21 19:21:33
【问题描述】:

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

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

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

例如,我创建了这个子目录:/res/drawable/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 android-studio android-drawable android-resources


    【解决方案1】:

    你可以通过这个链接-https://romannurik.github.io/AndroidAssetStudio/nine-patches.html

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

    【讨论】:

      【解决方案2】:

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

      附言:对于drawables的自动缩放,您可以考虑使用svg 链接:Developer android link

      【讨论】:

      • 好的,我知道我可以手动将这些目录创建到 res 中,然后将使用 Photoshop 创建它们的不同版本的图像放入这些目录中。我的疑问是:Android Studio 自动执行此功能? (创建文件夹和不同像素密度的图像)从原始可绘制文件夹开始?
      • 直到现在我还没有经历过这个。所以可能在我看来它不会自动这样做。
      猜你喜欢
      • 1970-01-01
      • 2014-01-22
      • 2016-02-05
      • 1970-01-01
      • 2019-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多