android布局文件添加了一个布局,竟然在R中没有此ID

这是为什么,难道布局不能有ID?
这个线性布局是嵌套在上一层线性布局之内的

资源文件的使用分为在代码中使用和在其他资源文件中引用该资源文件。在我们编译一个Android应用时,Android会自动生成一个R类,在该类中根据不同的资源类型又生成了相应的内部类,该类包含了系统中使用到的所有资源文件的标示,其内容如下所示。

Java代码:
package com.xxx.xxx;
// 资源类
public final class R {
// 数组
public static final class array {
public static final int faultRecords=0x7f060000;
}
// 属性
public static final class attr { }
// 颜色
public static final class color {
public static final int black=0x7f040001;
public static final int red=0x7f040000;
}
// 图片
public static final class drawable {
public static final int icon=0x7f020001;
public static final int logo2=0x7f020002;
}
// ID标示
public static final class id {
public static final int licenseEditText=0x7f070022;
public static final int lngEditText=0x7f070001;
}
// 布局
public static final class layout {
public static final int custom_dialog=0x7f030000;
public static final int custom_dialog1=0x7f030001;
}
// 字符串
public static final class string {
public static final int app_name=0x7f050001;
public static final int hello=0x7f050000;
}
}

1.在代码中使用资源文件

在代码中访问资源文件,我们是通过使用R资源类中定义的资源文件类型和资源文件名称来访问的。具体格式为:R.资源文件类型.资源文件名称。例如:

Java代码:
// 设置Activity显示的布局视图
setContentView(R.layout.login_system);
// 获得Button实例
cancelBtn = (Button)findViewById(R.id.cancelButton);
loginBtn = (Button)findViewById(R.id.loginButton);
// 获得TextView实例
userEditText = (EditText)findViewById(R.id.userEditText);
pwdEditText = (EditText)findViewById(R.id.pwdEditText);
}

另外,除了访问用户自己定义的资源文件,还可以访问系统中的资源文件。大部分的资源文件被定义在android包下的R类中。访问系统中的资源文件格式为:android.R.资源文件类型.资源文件名称。例如:

Java代码:
int i ;
// 动画
i = android.R.anim.fade_in;
// 数组
i = android.R.array.emailAddressTypes;
// 颜色
i = android.R.color.darker_gray;
// 尺寸
i = android.R.dimen.app_icon_size;
// 可绘制图片
i = android.R.drawable.title_bar;
// 字符串
i = android.R.string.cancel;

2.在其他资源文件中引用资源文件

我们经常会在布局文件的元素属性中引用其他资源文件,经常用到的有字符串、图片、颜色等资源。例如,下列布局文件中的TextView组件引用了一个字符串来表示文本内容,引用了一个颜色来表示文本颜色,引用了一个尺寸来表示文本尺寸。

Java代码:
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/styled_welcome_message"
android:textColor="@color/opaque_red"
android:textSize="@dimen/sixteen_sp" />
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-07-14
你下面的图片layout中的id应该是对应工程中那个layout文件夹中.xml文件的id本回答被提问者采纳
第2个回答  推荐于2018-03-08
+id 你要主动去加id,命名。要么就再clean下本回答被网友采纳

修改了android 里的layout文件 R文件里的id为啥没有改变?
修改了layout文件,R文件没有生成自己的id,通常是res目录下有错误。解决方式:选择“eclipse -- myeclipse”的clean,R文件便会出现。在工程上点击鼠标右键,选择“Build Project”,R.java就会恢复。这样在程序中调用R文件指向的资源,也就可以自动补全了。如果R文件丢失,则可以从别的工程中拷贝一份R文...

安卓开发中,在XML文件中的标签里添加@+id\/XX,但是R.java并没有生成对应...
两个可能,一个是你的项目还没有刷新,还有一个就是你的xml文件写错了。xml文件写错了的话R.java是不会更新的。你可以检查一下自己的xml配置文件里有没有类似id重名之类的情况

android 编译 出现r 不存在 是什么意思
一:重新编译一次 这种方法我试了一次,但是效果不是很显著,因为之后当我再次引入资源的时候又报错了 二:Rebuild Project 如图选择 Build--> Rebuild Project,选中后下方出现如图 等待一段时间,完成之后如图:如图选择 Build--> Rebuild Project,选中后下方出现如图 等待一段时间,完成之后如图:...

Android R文件里的ID 与我布局文件里的ID不一致
你直接到PROJECT菜单下,找到CLEAN,选中对应工程将其清理下,只要文件本身没问题,就OK了 步骤:PROJECT→clean...

android在layout下新建一个xml文件时,src的包下为什么没有生成相应...
layout 下的xml 只是布局文件,是不会生成对应的java 文件。android src 是java 文件 主要是用来写 组件和逻辑的, java 文件 要根据 res 资源对应的Id来获取资源。res 是资源文件,图片,颜色等都可以在这边定义, 然后会自己生成对应的ID。如 定义 图片,pic。png 放到drawable 文件夹在 ,就可以...

哪位Android大神愿意帮我看看这些activity中的id为何会出错
那就看下你的java文件最头上的import列表里,import进来的R是不是引错了.比如你的这个布局文件是在本工程生成的,那肯定就是<you.package.name>.R才会有你的id.如果你错误的引用了其他R文件(最常见的是eclipse自作主张给你引入com.android.R),那这个R文件中自然就没有你这3个id的,就会报错.

Android里,在drawble-mdpi里面加了图片,在R.java中是通过R.id还是R.dr...
drawable里面是资源的惟一标识,id里面是控件的惟一标识,举个例子,比如你在配置文件中有一个ListView控件,那么这个控件的惟一标识就在id里面找,这时你把listView的背景换成了a.png那么这个a.png就在drawble里面

android 新手求教 这个id所在位置在哪里 实在找不到
前面的R.id.realtabcontent是一个View,或者你可以理解为一个容器,它可以是一个acitvity布局里的一部分,也可以是其它的任意继承与View\/ViewGroup的LinearLayout或者其它等等,下面new Me_Fragment()是要放到前面的View里用于显示的,形成一个View的层级关系,以便于从rootView依次渲染显示。Fragment里面放的...

如何避免android layout.xml 布局文件中重名id的错误
开发安卓时,记住布局文件的ID一定要根据你用的功能模块来命名,不要觉得习惯或者好听就使用,不然一定会遇到重复,然后冲突,你可以命名例如姓名ID,有很多种,你分类为水果,就可以SG-xingming。这种类型,就不会造成冲突了。

android布局中的@+id和@id的区别
因此, ***@+id和@id的区别就是: @+id引用的值存在则使用, 不存在则创建; @id只能引用R.java中已经存在的值, 如果引用的值不存在则编译出错.使用这个布局, 编译是会报错, 错误如下 (关键信息, 其他省略):错误信息很明显, 就是上面的那个TextView的layout_below所引用的id值不存在 !!根据...

相似回答