1、  资源包括:文本字符串、图像和图标、音频文件、视频和其他应用程序使用的组件。

2、  在Android工程中,Android资源文件是同Java类文件分开存储的,大多数常见的资源类型存储在XML中。你也可以将原始数据文件和图形作为资源来存储。

3、  Eclipse下默认的Android资源目录

资源子目录

说明

/res/drawable

图形资源

/res/layout

用户界面资源,Widget

/res/values

简单数据,如字符串、颜色值

说明:当你向工程资源目录/res中加入新的资源时,插件将会探测到并自动使用AAPT工具在后台编译这一资源,以便能在应用程序中访问它。

4、  资源文件的类型

资源文件存储在Android工程的/res目录下,并且严格(理由充分时可以更改)存储于各自的子目录和文件中。资源文件的名称必须为小写且要求简单(仅由字母、数字和下划线构成)

资源类型

所需目录

文件名

适合的关键XML元素

字符串

/res/values/

strings.xml

<string>

字符串数组

/res/values/

arrays.xml

<string-array>

颜色值

/res/values/

colors.xml

<color>

尺寸

/res/values/

dimens.xml

<dimen>

简单Drawable图形

/res/values/

drawables.xml

<drawable>

位图图像

/res/drawable/

例如:img.png、img.jpg、等

支持的图形文件或xml文件定义的drawable图形

动画序列(补间)

/res/anim/

如:fancy_animl.xml、

more_options.xml

<set><alpha><scale>

<translate><rotate>

菜单文件

/res/menu/

如、my_menu1.xml

<menu>

XML文件

/res/xml/

如、some.xml

由开发人员自己定义

原始文件

/res/raw/

如、some_audio.mp3

main_video.mp4、some_text.txt

布局文件

/res/layout/

如、start_screen.xml

多种定义

样式和主题

/res/values/

styles.xml、themes.xml

<style>

注意:某些资源文件,如:动画文件和图形,是根据它们自己的文件名来引用的,所以要适当地对它们进行命名。R.drawable.flag

5、  存储不同的资源文件时,需要注意事项:

1>     存储String类型的文件。每一个xml文件都要包含:

<?xml version="1.0" encoding="utf-8"?>

<resources>

里面可以是:<string>、<color>等

</resources>

2>     存储图形、动画、菜单和文件

可以图形、动画、菜单、文件任意的xml文件和原始文件作为资源来存储,这些资源不存储在/res/values/下,而是存储在不同的文件夹下。

6、  引用资源文件

String myString = getResources().getString(R.string.string标签标签name属性的名字);

int myColor = getResources().getColor(R.color.color标签name属性的名字);

float myDimen = getResources().getDimension(R.dimen.dimen标签name属性的名字);

1>     使用String(字符串)的资源

在xml文件中使用String资源时,在包含撇号或单引号的字符串需要进行转移或使用双引号括起来。

strings.xml格式如下

<?xml version="1.0" encoding="utf-8"?>

<resources>

<string name="hello">Hello World, MainActivity!</string>

<string name="app_name">开始学习Android知识</string>

</resources>

(1)、对于字符串资源,可以加入三种具有HTML风格的属性:<b>、<i>、<u>分别表示加粗、斜线和下划线。

<string name="txt"><b>加粗</b>,<i>斜线</i>、<u>下划线</u></string>

(2)、使用格式化的字符串

创建带有格式化的字符串,但是你需要 加粗、斜体和下划线进行转义。

<string name="winLose">Score:%1$d of %2$d! You %3$d.</string>

<string name="winLoseStyled">Score: %1$d of %2$d ! you &amp;lt;i&gt;%3$s &amp;lt/i&gt;.</string>

引用:

使用下面的格式的格式会将HTML风格属性从字符串中被剔除

String myStrHello = getResources().getString(R.string.txt);

  CharSequence myBoldStr = getResources().getText(R.string.hello);

载入一个格式化得字符串(需要确保所有的格式变量都已经被转义):

String resultText = String.format(myStrHello, 5,5,escapeWin);

在Activity中引用字符串数组:

strings.xml文件中的内容:

<string-array name="flavors">

<item>Vanilla</item>

<item>Chocolate</item>

<item>Strawberry</item>

</string-array>

Activity中的代码:String aFlavors[] = getResources().getStringArray(R.array.flavors);

2>     使用颜色(RGB颜色值)

RGB颜色值始终以”#”开头,另外可以给出alpha控制透明度,

<?xml version="1.0" encoding="utf-8"?>

<resources>

<color name="text_color">#F00</color>

</resources>

颜色资源事实上是一个整数。

3>     使用尺寸

测量单位

说明

所需的资源标记

示例

像素

实际的屏幕像素

px

20px

英寸

物理测量单位

in

2in

毫米

物理测量单位

mm

2mm

普通字体测量单位

pt

14pt

密度独立像素(density-independent pixels)

相对于160dpi屏幕的像素

dp

2dp

比例独立像素(scale-independent pixels)

对于字体显示的测量

sp

14sp

 

注意:英寸是长度单位。1 英寸= 2.539999918 厘米(公分)

尺寸资源实际上是最简单的浮点值。

float myDimen = getResources().getDimension(R.dimen.dimen标签name属性的名字);

4>     使用简单的Drawable资源

使用Drawable资源类指定一个简单的带颜色矩形。

<?xml version="1.0" encoding="UTF-8"?>

<resources>

<drawable name="red_rect">#F00</drawable>

</resources>

引用:

ColorDrawable myDraw = (ColorDrawable)getResources().getDrawable(R.drawable.red_rect);

 

5>     使用图像

支持的图像

说明

扩展名

便携式网络图像

推荐的格式(无损)

.png

9格拉伸图像

推荐的格式(无损)

.9.png

联合图像专家组

可接受的格式(有损)

.jpg .jpeg

图形交换格式

不鼓励的格式

.gif

(1)    使用9格拉伸图像

手机屏幕拥有各种不同的尺寸,想象一个可以根据不同的屏幕尺寸和方向或者不同长度的文字调整大小的图像。它是非常方便而适用。

使用步骤:

A、运行 Android SDK Tools --àdraw9patch.bat文件

B、将一个png文件拖入左侧的面板中

C、选中左侧底部的Show patches【斑点】

D、将Patch scale设置为合适的值(比能够看见标记结果值稍大)

E、沿着图像的右边沿单击,以设置水平“格”引导

F、沿着图像的上边沿单击,以设置垂直“格”引导

G、在右侧面板中查看结果,移动“格”导引知道图像按照预期的结果进行拉伸。

H、要删除一个“格”导引,按住“Shift”键在导引的像素(黑色)上点击即可。

I、.9.png为扩展名保存图像。

(2)通过程序引用

图像资源(BitmapDrawable):通过ID即可设定用户界面Widget的属性。

A、如果你把flag.png放入/res/drawable目录中,并且向主布局中加入ImageView Widget

ImageView flagImageView = (ImageView)findViewById(R.id.imageView01);

flagImageView.setImageResource(R.drawable.icon);

B、直接访问BitmapDrawable对象

BitmapDrawable bitmapFlag = (BitmapDrawable)getResources().getDrawable(R.drawable.icon);

int iBitmapHeightInPixels = bitmapFlag.getIntrinsicHeight();

int iBitmapWidthInPixels = bitmapFlag.getIntrinsicWidth();

C、使用九格图像

调用getDrawable方法返回一个NinePatchDrawable对象。

和BitmapDrawable使用类似

6>     使用菜单

ANDROID资源文件【转】的更多相关文章

  1. Android资源文件简介

    Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, 资源 ...

  2. 【转】关于Android资源文件中出现百分号的问题

    关于Android资源文件中出现百分号的问题 分类: Android JAVA2014-08-01 16:53 1345人阅读 评论(0) 收藏 举报 ANDROID格式化资源文件   目录(?)[+ ...

  3. 【Android 应用开发】Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组

    . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/19913755 . 一. Android资源文件简介 1 ...

  4. Android 资源文件命名与使用

    [推荐]资源文件需带模块前缀 [推荐]layout 文件的命名方式 Activity 的 layout 以 module_activity 开头 Fragment 的 layout 以 module_ ...

  5. Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组

    一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...

  6. Android资源文件说明

    一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...

  7. android 资源文件

    系统文档:http://developer.android.com/guide/topics/resources/available-resources.html 1. 系统下资源文件夹的名字是固定的 ...

  8. [置顶] Android资源文件分析

    1)修改开机默认壁纸 Android开机默认资源文件为:frameworks/base/core/res/res/values/config.xml 我们找到wallpaper行: <strin ...

  9. 003.android资源文件剖析(Resources)

    android的资源文件使用的重要性,不言而喻.让我们从潜到深逐渐来了解吧. 一:android的基本资源: 1.字符串资源 android的资源文件保存在:res\values\ 2.布局资源 an ...

随机推荐

  1. Struts2 注解(转)

    转自:http://blog.csdn.net/wwwqvod/article/details/6214431 也叫Zero Configuration(零配置),它省去了写xml文件的麻烦,可以直接 ...

  2. Android-Ant自动编译打包android项目 -- 2 ----签名与渠道包

    上篇介绍了怎么使用ant自动编译打包现有的android项目,这篇将继续介绍如果如何在ant打包应用的时候加入签名信息以及自动打包渠道包. 1. 加入签名信息: 在项目的根目录下建一个ant.prop ...

  3. PMC

    PMC = Production Material Control 生产及物料控制,通常分为两个部分: PC:生产控制或生产管制(台.日资公司俗称手配)主要职能是生产的计划与生产的进度控制 : MC: ...

  4. Android手机自带内部存储路径的获取 (转)

    转自:http://my.oschina.net/liucundong/blog/288183 我有一台中兴的Android手机,型号是 ZTE U930HD,手机没有插入外置SD卡(也就是Micro ...

  5. 谷歌page speed 安装使用及页面问题详解

    原文地址:http://wenku.baidu.com/view/b0a61f3ebcd126fff7050b40.html 谷歌page speed 安装使用及页面问题详解 谷歌page speed ...

  6. 佩特来项目经验小集合(2)___组合查询存储过程,报错 &quot;varchar JBID=&#39;&#39; 转换成数据类型 int 时失败&quot;

       今天写一个组合查询的存储过程遇到这样一个问题:在将 varchar 值 'SELECT * FROM View_DLS_WXJD_Customer WHERE 1=1 and JBID ='' ...

  7. java设计模式之——代理模式

    1,什么是代理模式? 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问. 2,策略模式有什么好处? 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象 ...

  8. clientX,pageX,screenX,offsetLeft,scrollTop

    出处:点击打开链接 一直不太明白,今天看了一下,感觉挺详细,先转载过来....... clientX 观点:鼠标相对于WINDOWS的坐标. 这里这个WINDOWS是指我们能看见的浏览器大小.所以不可 ...

  9. Android源码学习(一) 数据集观察者

    查看Android源码发现这个,决定记下下来. 1.在android.database这个包下面,存在这样一个抽象类DataSetObserver,里面包括onChanged()和onInvalida ...

  10. SQL游标+递归查询客户子客户转换率

    ALTER PROCEDURE [dbo].[Account3YearsConversion ] as DECLARE @AccountId UNIQUEIDENTIFIER , @yearbefor ...