Android 资源文件中@、@android:type、@*、?、@+含义和区别_@android @*android-程序员宅基地

一.@代表引用资源

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" 

转自:http://hi.baidu.com/haoziqi/item/392222bedf4ac944bb0e122e

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hj752994021/article/details/39826547

智能推荐

向量相似度java_特征向量相似度和距离的计算-程序员宅基地

文章浏览阅读341次。1/*2特征向量相似度和距离的计算34相似度:5·夹角余弦6·相关系数7·Dice8·Jaccard910距离11·明氏距离12·欧氏距离13·马氏距离14·Jffreys&Matusita距离15·Mahalanobis距离,未实现,协方差矩阵16·Camberra距离(Lance距离,Williams距离)17*/1819#inclu..._java 计算特征向量的相似度

Linux性能测试工具_ubuntu显卡测试工具-程序员宅基地

文章浏览阅读2.1k次。Linux系统出现问题时,我们不仅需要查看系统日志信息,而且还要使用大量的性能监测工具来判断究竟是哪一部分(内存、CPU、硬盘……)出了问题。在Linux系统中,所有的运行参数保存在虚拟目录/proc中,换句话说,我们使用的性能监控工具取到的数据值实际上就是源自于这个目录,当涉及到系统高估时,我们就可以修改/proc目录中的相关参数了,当然有些是不能乱改的。下面就让我们了解一下这些常用的性能监控工_ubuntu显卡测试工具

平台治理开发:分布式系统的消息队列与事件驱动-程序员宅基地

文章浏览阅读247次,点赞5次,收藏9次。1.背景介绍1. 背景介绍分布式系统是现代软件架构中不可或缺的一部分,它们通过将应用程序分解为多个组件,以提高可扩展性、可靠性和可维护性。然而,分布式系统也带来了一系列挑战,包括数据一致性、故障转移和消息传递。消息队列和事件驱动架构是解决这些挑战的关键技术之一。消息队列是一种异步通信机制,它允许不同的组件在不同时间传递消息。事件驱动架构则是一种设计模式,它将系统的行为分解为一系列事件和...

基础练习 闰年判断 C语言_年份是4的倍数而不是100的倍数; 2. 年份是400的倍数。c-程序员宅基地

文章浏览阅读311次。基础练习 闰年判断 C语言描述:给定一个年份,判断这一年是不是闰年。当以下情况之一满足时,这一年是闰年:年份是4的倍数而不是100的倍数;年份是400的倍数。其他的年份都不是闰年。输入:输入描述:输入包含一个整数y,表示当前的年份。输入样例:2013输出:输出描述:输出一行,如果给定的年份是闰年,则输出yes,否则输出no。说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分。输出样例:no提_年份是4的倍数而不是100的倍数; 2. 年份是400的倍数。c

【Java Web后台实验与开发】The server time zone value ‘�й���׼ʱ��‘ is unrecognized or represents more than one-程序员宅基地

文章浏览阅读1.2k次。文章目录1 错误环境2 错误原因3 解决方案:1 错误环境mysql版本:5.5.02 错误原因使用原mysql5.1.38不会出现该问题因使用了Mysql最新版驱动所以报错3 解决方案:方案1、在项目代码-数据库连接URL后,加上 (注意大小写必须一致)?serverTimezone=UTC方案2、在mysql中设置时区,默认为SYSTEMset global time_z..._the server time zone value

虚拟服务器与DMZ_vmware用dmz主机-程序员宅基地

文章浏览阅读4.7k次。1http://www.topoint.com.cn/html/article/2012/02/325965.html在设置wlan端口映射时,tp-link只有一个设置端口号,其实它只允许外部端口和内部端口的端口号一致。internet上面某台机器连接wlan的12345(外部端口)时,路由器会将所有数据发送给192.168.1.100的12345(内部端口)有的路由_vmware用dmz主机

随便推点

51单片机智能电风扇控制系统proteus仿真设计( 仿真+程序+原理图+报告+讲解视频)_电风扇模拟控制系统设计-程序员宅基地

文章浏览阅读4.2k次,点赞4次,收藏51次。51单片机智能电风扇控制系统仿真设计( proteus仿真+程序+原理图+报告+讲解视频)仿真图proteus7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0042。_电风扇模拟控制系统设计

build.sh脚本-程序员宅基地

文章浏览阅读2.8w次,点赞7次,收藏73次。1开头程序必须以下面的行开始(必须方在文件的第一行):#!/bin/sh符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。当编写脚本完成时,如果要执行该脚本,还必须使其可执行。要使编写脚本可执行:编译chmod +x filename这样才能用./filename来运行2注释在进行shell编程时,以#开头的句子表示..._build.sh

标准库——bitset类型_bitset<32> bits(num);-程序员宅基地

文章浏览阅读338次。关于标准库中sring、vector、set、map、queue、stack 、bitset等,方法有些记不清楚,每次用每次查,很费时间,干脆自己整理一下,记不住的时候,查询更方便。// 需要包含头文件和声明:#include<bitset>using std::bitset;bitset对象的定义和初始化bitset类型对象的区别仅在其长度,而不在其类型。定义时,&..._bitset<32> bits(num);

帆软报表各种情形下引入js_帆软使用js-程序员宅基地

文章浏览阅读804次。3.EncryptionComponent.KEY——$HOST/v10/encryption/page 平台切换国密的时候才可能会用到,主要用于提示异常。8.MigrationComponent.KEY——$HOST/v10/migration/page FineDb迁移数据时的进度页面,在插件中用处不大。12.WorkflowComponent.KEY——$HOST/workflow/authority 单独访问多级上报权限控制页面时生效。被依赖组件——前端页面。被依赖组件——前端页面。_帆软使用js

高可用 | Xenon 实现 MySQL 高可用架构 部署篇_xaeon mysql-程序员宅基地

文章浏览阅读906次。在《高可用 | Xenon:后 MHA 时代的选择》一文中,我们对 Xenon 的实现原理、应用场景等做了简要介绍。文章发布后,社区小伙伴都在咨询 Xenon 如何与 MySQL 配合使用?本文来自知数堂投稿,是一篇基于 Xenon 架构原理,部署 一主两从 架构的 MySQL 高可用集群的实操文档。Xenon 架构图 环境信息:Redhat 7MySQL 5.7Xenon 1.0.7XtraBackup 24*另:Xenon 支持 MySQL 5.6/5.7/8.0 内核,本文以_xaeon mysql

移植Linux内核到阿尔法开发板(一)编译NXP官方Linux内核_nxp linux-程序员宅基地

文章浏览阅读944次,点赞7次,收藏20次。移植Linux内核到阿尔法开发板(一)编译NXP官方Linux内核_nxp linux