当前位置: 首页 > 编程笔记 >

Android中@id和@+id及@android:id的区别介绍

储嘉悦
2023-03-14
本文向大家介绍Android中@id和@+id及@android:id的区别介绍,包括了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 vershtml" target="_blank">ion="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区别内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!

 类似资料:
  • 问题内容: @id/和之间的区别是什么@+id/? 在@+id/加号中+指示创建一个新的资源名称并将其添加到R.java文件中,但是那又如何@id/呢?从:的文档中,ID当引用Android资源时ID,不需要加号,但必须添加android包名称空间,如下所示: 但是在下面的图像中,Eclipse并未提出任何建议@android:id/。 该图显示了对@ / id和@ + / id的建议 是和一样吗

  • 本文向大家介绍Android编程中@id和@+id的区别分析,包括了Android编程中@id和@+id的区别分析的使用技巧和注意事项,需要的朋友参考一下 本文分析了Android编程中@id和@+id的区别。分享给大家供大家参考,具体如下: Android中的组件需要用一个int类型的值来表示,这个值就是组件标签中的id属性值。 id属性只能接受资源类型的值,也就是必须以@开头的值,例如,@id

  • 也许是一个新手的问题...... 我开始学习JavaFX在FMXL应用程序中使用场景生成器,通过阅读以下教程: http://docs.oracle.com/javase/8/javafx/get-started-tutorial/fxml_tutorial.htm 所以一旦我应用了一些更改,这个2个ID的问题出现了...我可能错过了或混淆了他们的一些事情... 谁能告诉我它们在哪些情况下被使用?

  • 问题内容: 我想知道和之间有什么区别。我知道最后一个是常规的ID分配,但第一个看起来不同。有什么特别之处? 我在哪里看到的: 我正在研究ListView,ListAdapter之类的东西,作者在布局xml文件中定义了ListView,如下所示: 我也要提一下id 他还扩大了课堂。 这是文章的出处。 还有我在想什么问题: 我们应该扩展吗?也许我想要一个还包含其他视图的活动。 我们只是因为扩展而使用,

  • 问题内容: 也许是一个真正的新手问题。 通过阅读以下教程,我将开始使用Scene Builder在FMXL应用程序中学习JavaFX: http://docs.oracle.com/javase/8/javafx/get-started-tutorial/fxml_tutorial.htm 因此,一旦我应用了一些更改,就会出现有关这2个ID的问题…我可能已经错过或混淆了一些关于它们的信息… 谁能告

  • 问题内容: 和属性有什么区别?它们似乎都具有提供标识符的相同目的。 我想知道(特别是关于HTML表单)出于某种原因是否有必要或同时使用两者。 问题答案: 在表单提交中发送数据时使用该属性。不同的控件反应不同。例如,您可能有几个单选按钮,它们具有不同的属性,但属性相同。提交后,响应中只有一个值- 您选择的单选按钮。 当然,这还不止于此,但是它一定会让您思考正确的方向。