在Android应用中使用资源可分为在Java代码和XML文件中使用资源,其中Java代码用于为Android应用定义四大组件,而XML文件则用于为Android应用定义各种资源。
1.在Java代码中使用资源清单项
2.在Java代码中访问实际资源
3.在XML文件中使用资源
颜色值的定义
Android中的颜色值是通过红,绿,蓝三原色以及一个透明度值来表示的,颜色值总是以#号开头。
定义字符串,颜色,尺寸资源文件
字符串资源文件位于/res/values/目录下,案例如下:
<string name="Hello">Hello World!</string>
该示例的字符串文件为:
上面程序代码中每个<string…/>元素定义一个字符串,name属性定义字符串的名称。
颜色资源文件位于/res/values/目录下,例如:
<color name="c1">#F00</color>
如下文件是该示例的颜色资源文件
尺寸资源文件位于/res/values/目录下,代码规格如下:
使用字符串,颜色,尺寸资源
如前面介绍可知,在XML文件中使用资源按如下语法格式:
@[<package_name>:]<resource_type>/<resource_name>
在Java代码中使用资源按如下语法格式:
[<package_name>.R<resource_type>.<resource_name>]
Android并不推荐在Java代码中定义数组,因为Android允许通过资源文件来定义数组资源,所以不以介绍
图片资源
图片资源是最简单的Drawable资源,一旦系统在R资源清单类生成了指定资源的索引,接下来就可以在Java类中使用如下语法访问:
[<package_name>.]R.drawable.<file_name>
在XML文件中按如下语法访问:
@[<package_name>:]drawable/file_name
StateListDrawable资源
StateListDrawable用于组织多个Drawable对象,当使用StateListDrawable作为目标组件的背景,前景图片时,StateListDrawable对象所显示的Drawable对象会随目标组件状态的改变而自动切换。
定义StateListDrawable对象的XML文件的根元素为<selector…/>,该元素可以包含多个<item…/>元素,该元素可指定如下属性。
1.android:color或android:drawable: 指定颜色或Drawable对象。
2.android:state_xxx: 指定一个特定的状态。
语法如下:
<item android:color="hex_color" android:state_pressed:=["true" | "false"] />
LayerDrawable 资源
与StateListDrawable有点类似,在此不详讲
ShapeDrawable 资源
用于定义一个基本的几何图形,其XML文件的根元素是<shape.../>元素,该元素可指定如下属性。
android:shape=["rectangle"|"oval"|"line"|"ring"]:指定定义哪种类型的几何图形
<shape
xmlns:android="schemas.android.com/apk/res/and…"
android:shape=["rectangle" | "oval" | "line" | "ring"] >
<corners
android:radius="integer"
android:topLeftRadius="integer"
android:topRightRadius="integer"
android:bottomLeftRadius="integer"
android:bottomRightRadius="integer" />
<gradient
android:angle="integer"
android:centerX="integer"
android:centerY="integer"
这里我就分享一份资料,希望可以帮助到大家提升进阶。
内容包含:Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。分享给大家,非常适合近期有面试和想在技术道路上继续精进的朋友。
如果你有需要的话,可以点击Android学习PDF+架构视频+面试文档+源码笔记获取免费领取方式
喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~