Android中@id和@+id及@android:id的区别介绍
前言
昨天突然有新来的同事问我这个@id 和@+id 的区别 ,为什么 我们的项目都是@id 自己新增的ui 使用的@+id
这里说下我的简单的回复项目是维护的之前的是为了统一管理使用了@id 方便修改 ,因为在ids.xml 里面有引用,@+id 是新增了,没有那样写,感觉有点麻烦,不过为了统一最后自己又修改为了@id,可能这些说的有些模糊 ,下面是自己整理的一些
知识,方便查找
首先我们需要知道我们平时使用的id 是int 类型的
1 @+id :
我们经常使用的当修改完某个布局文件并保存后,系统会自动在R.java文件中生成相应的int类型变量。变量名就是“/”后面的值
例如 android:id="@+id/tv"
变量名为tv
2 @id 表示引用一个已经存在的ID,在R.java里面的,比如在res 里面的value 里面建了一个ids.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <item name="text_id_text" type="id" /> </resources>
我们的id 引用
<TextView android:id="@id/text_id_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="测试一次文字" />
个人感觉这样做呢为了方便修改id 假如很多界面使用了相同的id 我们就可以这样写(维护的项目大约有30几个界面使用相同的id)
3 @android:id 这个是引用系统的id 自己基本没有使用过,简单的了解
android:id="@+id/btn",表示在R.java文件里面新增一个id为btn的控件索引,最常用的一种声明控件id的方式。android:id="@android:id/tabhost",表示引用的是系统已有的ID,在对应的sdk目录下的ids.xml里面。一般外部不去调用,是组件内部调用的时候使用。.android:id="@id/btn" ,表示引用一个已经存在的ID,在R.java里面的,比如我们自己建了一个ids.xml,里面声明了一组id,其中一个是btn,那么你就可以这样引用了。
总结
到此这篇关于Android中@id和@+id及@android:id的区别的文章就介绍到这了,更多相关Android @id和@+id及@android:id区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Android基础之startActivityForResult()的用法详解
这篇文章主要给大家介绍了Android中startActivityForResult()的用法,文中给出了详细的介绍与示例代码,相信对大家的理解和学习具有一定参考借鉴价值,有需要的朋友们下面来一起看看吧。2017-01-01Android7.0上某些PopuWindow出现显示位置不正确问题的解决方法
这篇文章主要介绍了Android7.0上某些PopuWindow出现显示位置不正确问题的解决方法,涉及针对Android7.0中PopuWindow属性与方法的相关设置技巧,需要的朋友可以参考下2017-10-10Android开发使用Activity嵌套多个Fragment实现横竖屏切换功能的方法
这篇文章主要介绍了Android开发使用Activity嵌套多个Fragment实现横竖屏切换功能的方法,结合实例形式分析了Android使用Activity嵌套多个Fragment进行横竖屏切换的原理与具体操作技巧,需要的朋友可以参考下2017-11-11Android自定义可循环的滚动选择器CycleWheelView
Android自定义可循环的滚动选择器CycleWheelView替代TimePicker/NumberPicker/WheelView,很实用的一篇文章分享给大家,感兴趣的小伙伴们可以参考一下2016-07-07
最新评论