setContentView 设置布局文件时,cannot be resolved or is not a field
2015-07-14 10:48
726 查看
最近在用setContentView()设置Activity的布局文件时,会报错,如“weather_layout cannot be resolved or is not a field”,导致在使用findViewById()获取xml文件中的控件时,也会报错,如“city_name cannot be resolved or is not a field”,具体代码见附图。
![](https://img-blog.csdn.net/20150714104910467)
解决方法:
1.检查setContentView()使用的layout目录下的xml文件字是否拼写有误,附图中的weather_layout对应layout目录下的weather_layout.xml对应,正确无误。
2.检查导入的R文件。R.java文件是由aapt工具根据res中的资源自动生成的,通过R.java文件可以对资源进行索引,该文件不能进行手动修改。最容易犯的错误是导入错误的R文件“android.R”,该R是java.lang.Object的子类。正确的R文件应当是“ 包名.R”,包名可以在AndroidManifest.xml 中 package一项得到。因而,本例正确代码”import com.coolweather.app.R”,而不是“import android.R”。快捷的做法是删掉“import android.R”单击红叉,选择 import “R”(包名),通常是第二条。
解决方法:
1.检查setContentView()使用的layout目录下的xml文件字是否拼写有误,附图中的weather_layout对应layout目录下的weather_layout.xml对应,正确无误。
2.检查导入的R文件。R.java文件是由aapt工具根据res中的资源自动生成的,通过R.java文件可以对资源进行索引,该文件不能进行手动修改。最容易犯的错误是导入错误的R文件“android.R”,该R是java.lang.Object的子类。正确的R文件应当是“ 包名.R”,包名可以在AndroidManifest.xml 中 package一项得到。因而,本例正确代码”import com.coolweather.app.R”,而不是“import android.R”。快捷的做法是删掉“import android.R”单击红叉,选择 import “R”(包名),通常是第二条。
相关文章推荐
- django自定义Field实现一个字段存储以逗号分隔的字符串
- ThinkPHP CURD方法之field方法详解
- Rendering for an Interactive 360o Light Field Display
- Java Annotation高级应用
- Java Annotation高级应用
- Java Annotation高级应用
- Java Annotation高级应用
- ExtJS 动态、静态设置ext:field/ext:combbox隐藏
- Detection field exists in mongodb
- 关于R.id.xxx或者R.layout.xxx找不到id或布局文件的解决方案
- JAVA基础之反射
- debug - UITextField 输入完跳入下一field,按钮变化
- 关于Field类的getDeclaredFields和getField两方法
- 双SeekBar联动布局
- 高新技术.反射
- layout 分层技巧
- 黑马程序员_反射与类加载器
- 修改 text-field 的 placeholder 文字颜色
- 黑马程序员-反射-.class-Class.forName()-object.getClass()-Constructor-Field
- 自定义布局 标题栏