Android 错误未找到与给定名称匹配的资源(位于';src';处,值为';@drawable/button1';)

Android 错误未找到与给定名称匹配的资源(位于';src';处,值为';@drawable/button1';),android,imagebutton,android-image,Android,Imagebutton,Android Image,我认为这本书的代码不正确。在我家试过了,效果不错。发现我的日食实际上被破坏了。必须删除并重新安装eclipse。 这是我在这里的第一篇帖子,如果我没有遵守一些规则,请告诉我。 我试着搜索,发现了一些有相同错误的帖子,但它们处理的是字符串。 我正在关注Android应用程序的绝对初学者(第二版),在第179页,您将button1.xml带到了您的res/drawable中。当我进入layout/activity_main.xml并输入 <ImageButton android:id

我认为这本书的代码不正确。在我家试过了,效果不错。发现我的日食实际上被破坏了。必须删除并重新安装eclipse。

这是我在这里的第一篇帖子,如果我没有遵守一些规则,请告诉我。 我试着搜索,发现了一些有相同错误的帖子,但它们处理的是字符串。 我正在关注Android应用程序的绝对初学者(第二版),在第179页,您将button1.xml带到了您的res/drawable中。当我进入layout/activity_main.xml并输入

<ImageButton 
    android:id="@+id/button_one"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/button1"
    android:contentDescription="@string/app_name"/>

链接到屏幕截图:

您能在java代码中尝试这样做吗

ImageButton imageButton = new ImageButton(context);
imageButton.setImageResource(R.drawable.button1);

根据项目浏览器的屏幕截图。。。您的
可绘制hdpi
文件夹中没有
按钮1.xml


如果您希望使用所有相同图像大小的文件夹,则密度无关紧要,您可以创建一个名为nothing other的新文件夹,该文件夹将处理所有屏幕密度。

我认为这本书的代码不正确。在我家试过了,效果不错。发现我的日食实际上被破坏了。必须删除并重新安装eclipse。


我为给您带来的不便表示歉意,并感谢社区的帮助。

我也有类似的问题,因为

1:我没有在@/drawable之后添加正确的图像名称

2:我也没有在drawable ldpi文件夹中添加图像

<ImageView
    android:id="@+id/imageDisplay"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/nasalogo">
</ImageView>

在我的例子中,我需要将名为nasalogo的图像添加到我的drawable ldpi文件夹中

这也是我的values/string.xml的样子

<?xml version="1.0" encoding="utf-8"?>

PCWorldsReader活动

<string name="text_image_title">Decorating the Sky</string>

<string name="text_image_date">Mon, 19 Aug 2013 00:00:00 EST </string>
<string name="text_image">nasalogo</string>

<string name="text_image_description"> This is mosaic image</string>
装饰天空
2013年8月19日星期一美国东部时间00:00:00
纳萨洛戈
这是马赛克图像


后来

我在逆向工程一个项目时被这个问题击中, “错误:错误:未找到与给定名称匹配的资源(在'background'处,值为'@color/default_bg')。”

决议: 将以下属性添加到“/project\ures/values/colors.xml”

#aa000000
最后它看起来像这样:

<resources>
  <color name="black_overlay">#66000000</color>
   <color name="default_bg">#aa000000</color>
</resources>

#66000000
#aa000000

还有另一种解决方案。 将所有图像文件夹(同名)复制到所有4个可绘制文件夹中。 并执行android:src=“@drawable/filename”

那对我来说很管用

我在AndroidStudio中遇到过这种情况,结果发现我的文件名为.png,但它是jpeg。

在Eclipse中,转到
项目
选项卡,然后单击
清除
。您的
R
文件是否生成?你能看到列出的资源吗?我执行了清理,没有生成R文件。我检查了我的资源,所有这些资源似乎都是正确的命名约定。我试图添加一个SS,但由于rep.button1_focused.png、button1_pressed.png、button1_normal.png和button1.XML,未能添加。如果没有生成R文件,这意味着在某个地方存在一些错误,无法正确编译,更可能是在一个XML文件中。在项目资源管理器中,右键单击项目名称并转到
Android工具
->
Run Lint:Check for common errors
Lint给了我2个警告0个错误,一个是“没有针对最新版本的Android;…”我正在使用minSdkVersion=“8”和targetSdkVersion=“16”,另一个警告是资源R.string.hello\u world似乎未使用。我去掉了那根绳子,因为我不用它了。删除后只有一个警告。这很奇怪。。。关于
Android工具
->
Fix项目属性
和一个旁注,
R
文件不在项目浏览器的
src
文件夹中,它会显示在
gen
文件夹中,以防您没有意识到这一点。很遗憾,当我添加到MainActivity.java时,不确定您希望我将其添加到何处。在主要问题中添加java代码以供审查。R.layout和R.menu出现错误,因为现在没有R文件。您必须将其添加到要将imageButton添加到布局的java文件中。这是main.xml文件的一部分吗?到目前为止,我所有的工作都是通过xml完成的。这本书就是这样教它的。到目前为止,我还没有创建任何java文件。正如他在上面的一条评论中所说,没有生成
R
文件。您能检查一下是否存在阻止生成R文件的错误吗?我还将button1.xml添加到hdpi文件夹中。我尝试了另一个清洁后,我做了,但仍然没有得到一个R文件。感谢drawable上的headsup,我看到其他人在这样做,我很好奇。尝试将所有资源添加到
drawable
文件夹,看看这是否有望解决任何问题。。。如果不是。。。老实说我一点也不知道为什么在我试着带你经历了所有的事情之后,
R
文件没有被生成……我从网站上下载了所有的源代码,并逐行浏览了一遍。网站上列出的代码与书中列出的代码不同。如上所述,我给出版商发了电子邮件。代码是如此的不同,我认为有人犯了一个大错误。谢谢你的支持,也很抱歉给我造成的任何混乱。你把所有的事情都整理好了吗?有点,即使只是从书中导入了所有的代码,它仍然是坏的。非常失望的是,出版商的代码完成了90%左右(根据书中的说法,它并没有做到它所说的一切)。非常感谢你,我不知道如何给你代表,但我会研究它,给你一些。我有可绘制的,它显示在我的布局设计视图很好。然而,我仍然得到了错误!我该怎么办?
<string name="text_image_title">Decorating the Sky</string>

<string name="text_image_date">Mon, 19 Aug 2013 00:00:00 EST </string>
<string name="text_image">nasalogo</string>

<string name="text_image_description"> This is mosaic image</string>
<color name="default_bg">#aa000000</color>
<resources>
  <color name="black_overlay">#66000000</color>
   <color name="default_bg">#aa000000</color>
</resources>