Android应用资源---其他资源类型(More Types)(二)
Dimension型资源
定义在XML中的尺寸值。它是一个带有尺寸单位的数字。例如:10px、2in、5sp。以下是Android系统支持的尺寸单位:
dp
密度无关的像素,它是基于屏幕的物理密度的一种抽象单位。相对与160dpi(每英寸的点数)的屏幕,每1dp大致等于1px。当运行在高密度的屏幕上时,用于描画1dp的像素数会适应屏幕的dpi的要求来进行放大。同样,当在低密度屏幕上时,1dp的像素也会被缩小。从dp到pixel的转换比率会随着屏幕的密度来改变,但是不一定成正比。使用dp作为单位(代替px单位)是一个中简单的解决方案,它会让布局中View对象针对不同的屏幕密度来进行正确的调整。换句话说,它提供了UI元素的实际尺寸在不同设备上的一致性。
sp
尺寸无关的像素,它有点像dp单位,但是它也会根据用户的字体尺寸选择来进行缩放。它被推荐用于指定字体的尺寸,以便文字能够针对屏幕的密度和用户的选择来调整。
pt
点数,基于屏幕的物理尺寸,确定1/72英寸中的点数。
px
像素,跟屏幕上的实际像素相对应。不推荐使用这个尺寸单位,因为实际上要适应各种不同的设备,每个设备每英寸的像素数量都可能不同,并且屏幕上可能会有更多或更少的总的可用的像素。
mm
毫米,基于屏幕的物理尺寸。
in
英寸,基于屏幕的物理尺寸。
注意:尺寸资源是一种简单的资源,可以使用其name属性提供的值来引用这种资源。如,能够把尺寸资源跟其他简单资源组合在一个XML文件的<resources>元素中。
文件位置(FILE LOCATION):
res/values/filename.xml
文件名是任意的,<dimen>元素的name属性值会被用于资源ID。
资源引用(RESOURCE REFERENCE):
在Java代码中:R.dimen.dimension_name
在XML中:@[package:]dimen/dimension_name
语法(SYNTAX):
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen
name="dimension_name"
>dimension</dimen>
</resources>
元素(ELEMENTS):
<resources>
必须的,它必须是根节点。没有属性。
<dimen>
它定义一个尺寸值,用带有尺寸单位(dp、sp、pt、px、mm、in)的浮点数来表示。
属性(ATTRIBUTES):
name
字符串值,它定义了这个尺寸的名称,属性值被用作资源的ID。
例子(EXAMPLE):
下面的XML保存在res/values/dimens.xml中:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="textview_height">25dp</dimen>
<dimen name="textview_width">150dp</dimen>
<dimen name="ball_radius">30dp</dimen>
<dimen name="font_size">16sp</dimen>
</resources>
以下是应用程序代码获取尺寸资源的方法:
Resources res = getResources()
;
float fontSize = res.getDimension
(R.dimen.font_size);
以下是在布局XML中设置尺寸属性的方法:
<TextView
android:layout_height="@dimen/textview_height"
android:layout_width="@dimen/textview_width"
android:textSize="@dimen/font_size"/>
ID型资源
在XML中定义的唯一资源ID。使用<item>元素中的提供的名称,Android开发工具会在工程的R.java类中创建一个唯一的整数,可以使用这个整数来标识一个应用程序资源(如,UI布局中的View对象),或者应用程序代码中使用的一个唯一整数(如,一个对话框或结果编码的ID)。
注意:ID资源是一种简单的资源,使用其name属性提供的值来引用资源。如,能够把ID资源与其他简单资源组合到一个XML文件的<resources>元素下。还有,要记住的是:ID资源不引用实际的资源项目,它只是一个能够跟其他资源绑定唯一ID,或是程序中使用的唯一整数。
文件位置(FILE LOCATION):
res/values/filename.xml
文件名是任意的。
资源引用(RESOURCE REFERENCE):
在Java代码中:R.id.name
在XML中:@[package:]id/name
语法(SYNTAX):
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item
type="id"
name="id_name"/>
</resources>
元素(ELEMENTS):
<resources>
必须的,它必须是根节点,没有属性。
<item>
定义一个唯一ID,不需要值。
属性(ATTRIBUTES):
type:必须设置为”id”
name:字符串值,给ID定义一个唯一的名称。
例子(EXAMPLE):
以下XML被保存在res/values/ids.xml文件中:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item type="id" name="button_ok" />
<item type="id" name="dialog_exit" />
</resources>
以下是把button_ok的ID资源设定给布局中的一个Button控件的方法:
<Button android:id="@id/button_ok"
style="@style/button_style" />
要注意的是:android:id属性的值在引用ID资源时没有包含“+”号,因为这个ID已经存在了,它在ids.xml文件中已经被定义了。(当使用“+”号指定资源ID时,如:android:id=”@+id/name”,则意味着这个ID不存在,应该给这个资源创建一个新的ID。)
在下面的示例中,代码使用中使用了“dialog_exit”ID来唯一标识一个对话框:
showDialog
(R.id.dialog_exit);
以下代码通过比较“dialog_exit”ID来创建对话框:
protectedDialogonCreateDialog(int)(int id){
Dialog dialog;
switch(id){
case R.id.dialog_exit:
...
break;
default:
dialog =null;
}
return dialog;
}
转载于:https://www.cnblogs.com/phonegap/archive/2012/04/30/2535823.html
Android应用资源---其他资源类型(More Types)(二)相关推荐
- SAP S/4HANA货币类型(Currency Types)和货币(Currency)配置
文章目录 一.基本概念 1.1 货币(Currency) 1.2 货币类型(Currency Types) 二.货币配置-OY03 三.货币类型配置-FINSC_LEDGER 3.1 SAP 预置货币 ...
- 【Android 安装包优化】资源混淆 ( 资源混淆效果 | APK 构建流程简介 | 资源 ID 组成 )
文章目录 一.资源混淆效果 二.APK 构建流程简介 三.资源 ID 组成 四.参考资料 一.资源混淆效果 资源混淆 , 将资源名称与目录进行混淆 , 提高了反编译的难度 , 同时也减小了 APK 文 ...
- Android Lint 去除重复资源 之 idea探究
Android Lint是很好的检查工具,可以帮助开发者检查很多问题,其中检查android项目重复的资源文件非常有用. 1.命令行下使用 Android Lint有很多命令,具体可以在网上查到.今天 ...
- 50个安卓开发者应该熟悉的Android Studio技巧和资源
原文:50 Android Studio Tips, Tricks & Resources you should be familiar with, as an Android Develop ...
- android pak文件_Android资源文件说明
一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...
- Android语言国际化values资源文件命名规则
今天,简单讲讲 android 里如何将语言国际化,和各个国家语言的value文件夹的命名规则. 昨天,需要将app的字符资源国际化,可是却不知道如何命名,在网上找了资料,终于解决了问题. Andro ...
- android 快速新建字符资源
今天,简单讲讲如何在android studio快速新建字符资源. 把一个硬编码的字符串放到资源文件中:option + return (Windows / Linux: alt + enter).光 ...
- Android开发 ---如何操作资源目录中的资源文件2
Android开发 ---如何操作资源目录中的资源文件2 一.颜色资源管理 效果图: 描述: 1.改变字体的背景颜色 2.改变字体颜色 3.改变按钮颜色 4.图像颜色切换 操作描述: 点击(1)中的颜 ...
- android中的用户资源访问(一)
2019独角兽企业重金招聘Python工程师标准>>> 这几天要总结一下android开发中的用户资源访问. android中的用户资源存在项目工程中res文件夹下,有字符串.颜色. ...
- Android开发/源码资源汇总
最全的Android开源音乐播放器源码汇总 http://neast.cn/forum.php?mod=viewthread&tid=9586&fromuid=5 Android 直播 ...
最新文章
- Galaxy Release (v 21.05),众多核心技术栈变更
- (13)处理静态资源(自定义资源映射)【从零开始学Spring Boot】
- 单选选择才可以提交_第二篇:DJANGO开发产品选择表amp;调查问卷
- 笔记-项目整体管理-变更管理-实施整体变更控制
- 不可不知的C#基础 4. 延迟加载 -- 提高性能
- 谷歌浏览器外贸版_针对谷歌SEO,你有哪些值得推荐的工具、插件、网站、app,或者技巧分享?...
- 【文章】人的好运从哪里来?
- 机器学习Tensorflow基于MNIST数据集识别自己的手写数字(读取和测试自己的模型)
- 微型计算机的主要,微型计算机组成,微型计算机主要由什么组成
- pytorch visdom蓝屏和无法启动
- dataframe一列按长度补0_Pandas中Series和DataFrame基础功能详解
- 安装DotNetCore.1.0.0-VS2015Tools.Preview2.exe 错误Error 0x81f40001 解决方法
- 宏脉系统怎么改服务器地址大全,宏脉系统使用手册大全新.doc
- 梯度下降优化算法综述
- Linux读写txt文件
- 2018美国大学计算机科学,美国大学计算机2018最新排名
- 用SPSS求均值 方差 标准差小例题
- Liunx文件常用命令总结
- IDL读写FITS文件
- Rabbit基本概念详细介绍