Android XML资源引用详解:@、@android:、@*、?、@+
需积分: 37 140 浏览量
更新于2024-09-11
收藏 21KB DOCX 举报
"Android xml资源文件中的符号@、@android:、@*、?和@+是用来引用和声明不同类型的资源的。这些符号在XML布局文件和Android资源管理系统中扮演着重要角色,帮助开发者高效地组织和使用应用的资源。
一. @代表引用资源
在Android开发中,@符号用于引用已经定义的资源。它分为两种主要情况:
1. 引用自定义资源
格式:@[<package_name>:][<resource_type>/]<resource_name>
例如:`android:text="@string/hello"` 这里引用的是当前应用中的字符串资源hello。
2. 引用系统资源
格式:@android:[<resource_type>/]<resource_name>
如:`android:textColor="@android:color/opaque_red"` 引用的是Android系统的预定义颜色资源。
二. @android: 与 @*的区别
@android: 专门用于引用Android框架公开的资源,而@*则可以引用系统的非公开资源,这通常涉及到Android框架的内部资源。非公开资源的使用可能带来兼容性问题,因此不建议在应用程序中广泛使用。
三. @*代表引用系统的非public资源
格式:@[<package_name>:][<resource_type>/]<resource_name>
例如:`@*android:type/name` 可以访问所有系统资源,而`@android:type/name`仅限于public属性的资源。
四. ?代表引用主题属性
?符号用于引用主题(Theme)中的属性,通常在style或者主题定义中使用,允许动态继承和改变控件的外观。例如:
`android:background="?android:attr/selectableItemBackground"` 会根据当前主题设置背景。
五. @+用于创建新的资源引用
当在XML文件中首次声明一个资源时,需要使用@+。这会创建一个新的资源ID,并将其与后面的资源名称关联。例如:
`android:id="@+id/my_button"` 创建了一个新的ID资源,名为my_button。
总结起来,理解并正确使用这些符号对于编写高效的Android代码至关重要。它们让开发者能够灵活地复用和定制资源,同时保持代码的清晰和可维护性。在实际开发中,应遵循最佳实践,尽量避免使用非公开的系统资源,确保应用的稳定性和兼容性。"
2014-12-27 上传
321 浏览量
2012-06-26 上传
2012-12-19 上传
点击了解资源详情
2020-08-31 上传
2013-07-05 上传
点击了解资源详情
点击了解资源详情
匿影寻踪
- 粉丝: 22
- 资源: 10
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍