Android开发中,xml资源文件中的id属性,为什么有的是@+id/....有的是@android:id/....;而且为什么有+号

 我来答
匿名用户
推荐于2016-01-24
展开全部
Android中组件需要用一个int类型的值来表示,这个值就是组件的id。
如果在@后面使用“+”,表示当修改完某个布局文件并保存后,系统会自动在R.java
文件中生成相应的int类型变量。例如,@+id/button1会在R.java文件中生成int button1 = value,其中value是一个十六进制的数。如果button1在R.java中已经存在同名的变量,就不再生成新的变量,而该组件会使用这个已存在的变量的值。

组件的id属性是一个资源id就可以,那么可以设置任何已经存在的资源id值。
@android:id/....这种方式就是设置一个已经存在的资源id。实际上,这个android就是系统的R类(在R.java文件中)所在的package。
追问
第二种@android:id/    你的意思是说,这样的Id是事先为某个视图或者控件就准备好了的(就好比语法中的保留字),所以,他们的整型值已经默认在R.java中定义了。是不是这样?
追答
就是直接引用系统已经定义好的值
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式