`
java_cofi
  • 浏览: 48827 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

【转】Android xml资源文件中@、@android:type、@*、?、@+含义和区别

阅读更多

2人收藏此文章, 我要收藏 发表于6个月前 , 已有340次阅读 共0个评论
一.@代表引用资源

1.引用自定义资源。格式:@[package:]type/name

android:text="@string/hello"



2.引用系统资源。格式:@android:type/name

    android:textColor="@android:color/opaque_red"

  注意:其实@android:type/name是@[package:]type/name 的一个子类

二.@*代表引用系统的非public资源。格式:@*android:type/name

  系统资源定义分public和非public。public的声明在:

  <sdk_path>\platforms\android-8\data\res\values\public.xml

  @*android:type/name:可以调用系统定义的所有资源

  @android:type/name:只能够调用publi属性的资源。

  注意:没在public.xml中声明的资源是google不推荐使用的。

三.?代表引用主题属性

  另外一种资源值允许你引用当前主题中的属性的值。这个属性值只能在style资源和XML属性中使用;它允许你通过将它们改变为当前主题提供的标准变化来改变UI元素的外观,而不是提供具体的值。例如:

  android:textColor="?android:textDisabledColor"

   注意,这和资源引用非常类似,除了我们使用一个"?"前缀代替了"@"。当你使用这个标记时,你就提供了属性资源的名称,它将会在主题中被查找,所以你不需要显示声明这个类型(如果声明,其形式就是?android:attr/android:textDisabledColor)。除了使用这个资源的标识符来查询主题中的值代替原始的资源,其命名语法和"@"形式一致:?[namespace:]type/name,这里类型可选。

四.@+代表在创建或引用资源 。格式:@+type/name

    含义:”+”表示在R.java中名为type的内部类中添加一条记录。如"@+id/button"的含义是在R.java 文件中的id 这个静态内部类添加一条常量名为button。该常量就是该资源的标识符。如果标示符(包括系统资源)已经存在则表示引用该标示符。最常用的就是在定义资源ID中,例如:

@+id/资源ID名         新建一个资源ID

@id/资源ID名          应用现有已定义的资源ID,包括系统ID

@android:id/资源ID名   引用系统ID,其等效于@id/资源ID名



android:id="@+id/selectdlg"

android:id="@android:id/text1"

android:id="@id/button3" 
分享到:
评论

相关推荐

    Android xml资源文件中@、@android、@+以及问号的使用详解

    "Android xml资源文件中@、@android、@+以及问号的使用详解" Android xml资源文件中@、@android、@+以及问号是四种不同类型的资源引用方式,它们在Android应用程序中扮演着重要的角色。下面将对这四种类型的资源...

    Android常见Views速查表

    - **`android:id`**: 定义该视图在XML布局中的唯一标识。 - **`android:layout_width`**: 设置视图的宽度,`wrap_content` 表示视图宽度由其内容决定,`match_parent` 表示视图宽度与父容器一致。 - **`android:...

    Android-XML一般属性.docx编程资料

    ### Android XML 一般属性概述 #### 一、Android系统中...以上内容概述了Android开发中常用的XML属性及相关方法,对于构建界面和交互逻辑至关重要。掌握这些属性和方法有助于开发者更加高效地开发出高质量的应用程序。

    Android开发开发技巧之 EditText 属性大全.pdf

    - **作用**:为`EditText`组件分配一个唯一的ID,以便于在代码或其他布局文件中引用。 - **示例**:`android:id="@+id/editText1"` 2. **android:layout_width** 和 **android:layout_height** - **作用**:定义...

    android 布局属性大总结

    本文详细介绍了 Android 中 TableLayout 和 RelativeLayout 的基本概念、布局原理以及常用属性。了解这些属性对于构建复杂且美观的应用界面至关重要。通过合理运用这些属性,开发者能够设计出既符合用户需求又具有...

    android 部分基本组件

    - **`android:password`** 和 **`android:inputType`**:当设置为`textPassword`时,输入的文本将以点的形式显示,适用于密码输入场景,保护用户的隐私。 #### TableLayout:表格布局 `TableLayout`组件用于创建表...

    android 解析XML文件 生成XML文件

    在Android开发中,XML文件广泛用于存储数据、配置文件以及应用程序间的数据交换。本文将深入探讨如何使用SAX、DOM和Pull解析器解析XML文件,以及如何生成XML文件。我们将同时展示Java和Kotlin两种语言的实现方法。 ...

    Android XML 解析笔记

    ### Android XML 解析知识点详述 #### 前言 在Android开发中,XML(可扩展标记语言)是一种常见的数据格式,特别是在不同平台之间进行数据交换时。由于XML具有跨平台的特点,它被广泛应用于数据通信领域。Android...

    Android 解析xml文件

    在Android开发中,XML文件常用于存储数据、配置或布局信息。XML(eXtensible Markup Language)是一种结构化标记语言,易于阅读和编写,同时机器也能方便地解析和生成。本篇将深入探讨Android中解析XML文件的方法,...

    android资源文件详解

    xml文件夹用于存放XML文件资源,这些资源文件可以用于多种目的,如定义布局、菜单、值资源和动画等。XML文件中的资源引用使用特定的前缀来标识:使用"@"符号引用自定义资源,而使用"?"符号引用主题属性。例如,...

    android-xml文件解析教程

    在Android开发中,XML文件是应用界面布局、资源管理和数据交换的重要载体。这篇教程将深入讲解如何解析XML文件,以帮助开发者更好地理解和操作XML数据。首先,我们来探讨XML的基本概念。 XML,全称为Extensible ...

    android XML文件解析和序列化 demo

    在"android XML文件解析和序列化 demo"中,可能演示了如何创建自定义对象,使用Pull解析器读取XML文件,将数据填充到对象列表,然后使用类似Gson或自定义的方法将对象列表序列化回XML文件。 **代码示例** ```java ...

    android xml中include标签的使用

    `&lt;include /&gt;`标签是一个非常实用的功能,它允许我们将一个XML布局文件嵌入到另一个布局文件中,实现代码的复用和模块化。这个Demo将详细解释如何使用`&lt;include /&gt;`标签以及其背后的原理。 ### 1. `&lt;include /&gt;`...

    android XMl 解析神奇xstream 二: 把对象转换成xml

    在Android开发中,XML是一种广泛使用的数据存储和交换格式,特别是在序列化对象为持久化格式时。XStream是一个强大的库,它使得Java对象与XML之间的转换变得极其简单。本篇文章将深入探讨如何在Android环境中利用...

    Android控件大全

    尽管提供的部分内容与搭建Android开发环境相关,但为了贴合“Android控件大全”的标题和描述,本篇内容将侧重于Android控件及其在不同布局中的应用。 ### Android控件大全及布局使用 #### 1. 常见控件介绍 **1.1 ...

    解析xml文件 android

    在"xmldemo"项目中,你可能会找到关于XML解析的示例代码,包括DOM、SAX和Pull解析的实现,通过学习和理解这些示例,你可以更好地掌握Android中XML文件的解析技巧。记得根据实际需求进行修改和扩展,以满足特定的应用...

    android_TextView属性详解

    ### android_TextView属性详解 #### 一、概述 在Android开发中,`TextView`是非常重要的UI组件之一,用于展示文本信息。为了满足不同场景下的需求,`TextView`提供了丰富的属性来控制其外观和行为。本文将详细介绍...

    六,Android Xml解析

    4. **资源文件**:例如字符串资源、颜色资源、尺寸资源等,都在values目录下的XML文件中定义,Android系统在运行时会自动解析。 5. **网络数据交换**:XML常用于服务器与客户端之间的数据交换,通过HTTP或FTP等方式...

    android Pull XML文件解析 存取 代码程序

    在Android开发中,XML文件广泛用于存储数据、配置和布局信息。XML(eXtensible Markup Language)是一种标记语言,其结构清晰,易于人阅读,同时也方便机器解析。本篇文章将深入探讨如何在Android中使用Pull解析器...

    android基础控件使用

    在Android开发中,基础控件是构建用户界面(UI)的核心元素。这些控件使得开发者能够创建各种交互式和功能丰富的应用。以下是一些主要的Android基础控件及其使用方法的详细说明: 1. **按钮(Button)** - `Button`...

Global site tag (gtag.js) - Google Analytics