我的main.xml文件中有一个imageView,最初没有设置源代码。我希望能够动态更改代码中的图像资源。所以我让我的imageView设置如下:
<ImageView
android:id="@+id/countryImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/CountryImageContent"/>
所以我尝试在我的代码中访问:
ImageView img = (ImageView) findViewById(R.id.countryImage);
问题出在这里。 Eclipse给我一个错误,说“countryImage无法解析或不是字段”。快速查看我的R.java文件,向我显示imageView实际上并不存在。为什么会这样?感谢。
答案 0 :(得分:1)
如果有任何错误,请查看您的drawable和布局
如果没有尝试清理你的项目
转到项目&gt;干净&gt;选择你的项目
如果没有,那么请查看您的导入
your.packagename.R将其删除
答案 1 :(得分:0)
项目 - &gt;干净。
这是解决这个问题的唯一方法。
另外,请确保在您的导入语句中没有:import android.R
检查此link以获取详细步骤。
注意:我假设您的布局和可绘制文件中没有错误,因为它们中的错误也可能导致此问题。
答案 2 :(得分:0)
确保所有资源文件只包含小写字母,数字和下划线字符(“_”)。
只有在创建R文件时没有错误(在“gen”文件夹中),您才能使用它的id。
答案 3 :(得分:0)
我认为给出@string
请从@string/CountryImageContent
删除所有UpperCase字符,并将其替换为小字符。
R.java文件不支持任何大写字符。当您声明任何资源的文件名时,它会给出相同的错误,例如: - Image, XML, @string, etc..
。
只需使用CountryImageContent
重命名country_image_content
即可。它会很完美。
答案 4 :(得分:0)
在这种情况下可以尝试的另一种选择是:文件->使缓存无效/重新启动...