【问题标题】:Android Studio: Trouble specifying drawable resourceAndroid Studio:无法指定可绘制资源
【发布时间】:2015-09-20 21:40:21
【问题描述】:

我正在尝试为操作栏指定一个菜单图标。我正在使用 Android Studio 1.2。我的 XML 代码如下:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto"
      xmlns:tools="http://schemas.android.com/tools"
      tools:context=".MainActivity">
    <item
        android:id="@+id/menu_connect"
        android:icon="@drawable/ic_settings_bluetooth_white_24dp.png"
        android:title="@string/menu_connect"
        app:showAsAction="always"
        />
    <item
        android:id="@+id/menu_settings"
        android:title="@string/menu_settings"
        app:showAsAction="never"
        />
</menu>

编译器会抱怨我在“android:icon=”之后添加的任何内容。根据我上次更改的内容,我得到:“未找到与给定名称匹配的资源”或“不允许字符串类型”(以及其他错误)。

我尝试了几篇帖子的建议。我清除了 Intellij 缓存并重建了所有内容,但没有任何改变。一篇文章表明,早期的 API 版本可能不支持 android:icon,因此我在模块构建脚本中将 minSdkVersion 设置为 23(我当前的 SDK 版本)。我重新同步并再次没有任何改变。

我在弄清楚如何为多分辨率位图设置可绘制目录时遇到了一些麻烦。 (为什么 Android Studio 在创建新项目时不创建它们?)我现在将它们(drawable-hdpi 等)设置为可绘制目录的兄弟姐妹。我认为这是对的。至少它们在 Android 目录视图中看起来是正确的。是的,我是新手。

还有什么我可以尝试的吗?

【问题讨论】:

  • 你应该从 android:icon="@drawable/ic_settings_bluetooth_white_24dp.png" 中删除 -.png

标签: android android-studio drawable


【解决方案1】:

替换:

android:icon="@drawable/ic_settings_bluetooth_white_24dp.png"

与:

android:icon="@drawable/ic_settings_bluetooth_white_24dp"

在引用 Android 内部任何地方的资源时,不要使用文件扩展名。

【讨论】:

  • 谢谢,就是这样。我发誓我至少尝试过几次,但当时我的可绘制目录可能仍然交叉。
猜你喜欢
  • 1970-01-01
  • 2015-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-29
  • 1970-01-01
  • 1970-01-01
  • 2020-07-20
相关资源
最近更新 更多