Android XML 布局基础(二)ID 用法

简介: Android XML 布局基础(二)ID 用法
  • 任何 View 对象均可拥有与之关联的整型ID,用于在结构树中对 View 对象进行唯一标识。编译应用后,系统会以整型形式引用此 ID,但在布局 XML 文件中,系统通常会以字符串的形式在 id 属性中指定该 ID。这是所有 View 对象共有的 XML 属性(由 View 类定义),并且会经常使用该属性。
  • ID 字符串名称,在同一布局中必须是唯一的,不能重名,不同布局中可以同名。
  • XML标记内部的ID语法:
android:id="@+id/dzm_test"
  • 命名格式:/ 后面的 ID 必须为字母开头。
android:id="@+id/123"      ×
android:id="@+id/123adc"   ×
android:id="@+id/-adc"     ×
android:id="@+id/abc123"   √
  • @:字符串开头处的 @ 符号表示 XML 解析器,解析并展开 ID 字符串的其余部分,并将其标识为 ID 资源
  • 加号(+):表示这是一个新的资源名称,必须创建该名称并将其添加到资源 (R.java 文件中) 内,Android 框架还提供许多其他 ID 资源,引用Android 资源 ID 时,不需要加号,但必须添加 android 软件包命名空间:
android:id="@android:id/empty"
  • @+id@id 的区别:
    @+id:其实就是在 R.java (R.txt) 文件中新增一个 ID 名称,如果存在相同的名称会覆盖之前的名称。
    @id:是直接引用 R.java (R.txt) 文件中存在的 ID 资源,如果不存在,则会编译报错。
  • 使用案例
<TextView
    android:id="@+id/dzm"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content
    android:text="Hello World!"
    android:textSize="24sp"/>
// 通过代码获取到组件元素
TextView textview = (TextView)findViewById(R.id.dzm);
相关文章
|
1月前
|
XML 编解码 搜索推荐
XML 布局小技巧
【10月更文挑战第24天】通过掌握这些 XML 布局小技巧,我们可以更轻松地设计出高质量的用户界面,提升用户体验。在实际应用中,要根据具体项目的需求和特点,灵活运用这些技巧,不断探索和创新,打造出独具特色的界面布局。
63 1
|
2月前
|
ARouter Android开发
Android不同module布局文件重名被覆盖
Android不同module布局文件重名被覆盖
|
4月前
|
移动开发 监控 前端开发
构建高效Android应用:从优化布局到提升性能
【7月更文挑战第60天】在移动开发领域,一个流畅且响应迅速的应用程序是用户留存的关键。针对Android平台,开发者面临的挑战包括多样化的设备兼容性和性能优化。本文将深入探讨如何通过改进布局设计、内存管理和多线程处理来构建高效的Android应用。我们将剖析布局优化的细节,并讨论最新的Android性能提升策略,以帮助开发者创建更快速、更流畅的用户体验。
73 10
|
2月前
|
XML 存储 数据库
xml用法
【10月更文挑战第17天】xml用法
21 7
|
3月前
|
编解码 前端开发 Android开发
Android经典实战之TextureView原理和高级用法
本文介绍了 `TextureView` 的原理和特点,包括其硬件加速渲染的优势及与其他视图叠加使用的灵活性,并提供了视频播放和自定义绘制的示例代码。通过合理管理生命周期和资源,`TextureView` 可实现高效流畅的图形和视频渲染。
301 12
|
2月前
|
ARouter Android开发
Android不同module布局文件重名被覆盖
Android不同module布局文件重名被覆盖
170 0
|
3月前
|
SQL XML Java
mybatis :sqlmapconfig.xml配置 ++++Mapper XML 文件(sql/insert/delete/update/select)(增删改查)用法
当然,这些仅是MyBatis功能的初步介绍。MyBatis还提供了高级特性,如动态SQL、类型处理器、插件等,可以进一步提供对数据库交互的强大支持和灵活性。希望上述内容对您理解MyBatis的基本操作有所帮助。在实际使用中,您可能还需要根据具体的业务要求调整和优化SQL语句和配置。
70 1
|
4月前
|
编解码 Android开发
【Android Studio】使用UI工具绘制,ConstraintLayout 限制性布局,快速上手
本文介绍了Android Studio中使用ConstraintLayout布局的方法,通过创建布局文件、设置控件约束等步骤,快速上手UI设计,并提供了一个TV Launcher界面布局的绘制示例。
74 1
|
4月前
|
存储 Java 数据库
基于全志H713 Android 11:给TvSettings添加default.xml默认值
本文介绍了在全志H713 Android 11平台上为TvSettings应用添加HDMI CEC功能的默认设置值的方法,通过修改SettingsProvider的源码和配置文件来实现默认值的设置,并提供了详细的步骤和测试结果。
109 0
基于全志H713 Android 11:给TvSettings添加default.xml默认值
|
4月前
|
Java 开发工具 Android开发
Android Studio利用Build.gradle导入Git commit ID、Git Branch、User等版本信息
本文介绍了在Android Studio项目中通过修改`build.gradle`脚本来自动获取并添加Git的commit ID、branch名称和用户信息到BuildConfig类中,从而实现在编译时将这些版本信息加入到APK中的方法。
97 0