string
字符串资源文件位于res/values目录下,根元素是标记,在该元素中,使用
标记定义各字符串,其次为标记设置name属性,来指定字符串的名称。
如:
我的应用
注意:资源文件的文件名不能是大写,必须是小写字母a-z开头,由小写字母a-z,0-9或者"_"组成
在Activity中的使用getResources()方法获取资源管理器,然后使用它的的get方法获取对应的
资源文件,如String字符串,用getString,字符串数组使用getArray
id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name" />
定义颜色资源文件
颜色资源文件位于res/values
目录下
根元素是标记,该元素中,使用标记定义各颜色,标记设置name属性,来指定颜色的名称
颜色值定义说明:
#RGB 使用红绿蓝的值来表示颜色,其中红,绿,蓝都用0-f来表示 如要表示红用:#f00
#ARGB 使用透明和红蓝绿三原色来表示,其中透明度,红,绿和蓝均采用0-f来表
示,如,要表示半透明的红色,可以使用 #8f00
#RRGGBB , 使用红,绿,蓝三原色的值来表示颜色,与 #RGB 不同的是这里的红绿蓝使用00-ff
来表示,如要表示蓝色可以使用 #0000ff
#AARRGGBB 使用透明度及红绿蓝三原色来表示颜色,其中透明度、红、绿、蓝均采用00-ff来
表示。例如,要表示半透明的绿色可以使用 #8800ff00 , #00 表示完全透明 ff表示完全不透
明
<resources>
<color name="blue">#ff0000color>
resources>
getResources().getColor(R.color.title);
"@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name"
android:textColor="@color/blue"/>
尺寸资源也是进行Android应用开发时,比较常用的资源,它通常用于设置文字 的大小,组件
的间距等。
为了让程序拥有更好的屏幕适应,在指定控件和布局大小的时候最好使用match_parent
和 wrap_content
,尽量避免将控件的宽和高设定一个固定值。不过在有些情况下,仅仅使用 match_parent
和 wrap_content
确实无法满足我们的需求,这时就必须要给控件的宽或高指定一个固定值。
单位说明:
Px(pixels,像素): 每个px对应屏幕上的一个点。例如,320*480的屏幕在横向有320个像
素,在纵向有480个像素
In(Inches,英寸): 标准长度单位。每英寸等于2.54厘米。例如,形容手机屏幕大小,经
常说,3.2(英)寸,4寸等,都是指这个单位,如果手机的屏幕是4英寸,表示手机的屏幕
(可视区域)对角色长度是4*2.54=10.16厘米
Pt(points,磅): 屏幕物理长度单位,1/72a英寸
Dip或者dp(设置独立像素):一种基本屏幕密度的抽象单位。在每英寸160点的显示器
上,1dip=1px——但随着屏幕密度的改变,dip px的换算也会发生改变
Sp(比例像素):主要处理字体的大小,可以根据用户字体大小首选项进行缩放。
Mm(Millimeters,毫米):屏幕的物理长度单位
因为手机的分辨率各不相同,一个 200px
宽的按钮在低分辨率的手机上可能将近占据满屏,而
到了高分辨率的手机上可能只占据屏幕的一半,谷歌当然也意识到了这个令人头疼了问题,于是
为 Android引入了一套新的单位 dp
和 sp
dp是密度和像素无关,也被称作dip,和px相比,它在不同密度的屏幕中的显示比例
将保持一致
sp 是可伸缩像素的意思,它采用了和 dp 同样的设计理念,解决了文字大小的适配问题
Android 中的密度就是屏幕每英寸所包含的像素数,通常以 dpi为单位。比如一个手机屏幕的
宽是 2 英寸长是 3 英寸,如果它的分辨率是 320*480 像素,那这个屏幕的密度就是 160dp
i,如果它的分辨率是 640*960,那这个屏幕的密度就是 320dpi,因此密度值越高的屏幕显
示的效果就越精细。
Android中最常用的一种资源,这里要提到的一个,布局文件中是可以包含其它布局文件的,语法为:
<include layout=”@layout/xxx”/>
<array/> 用于定义普通数组
<integer-array/> 用于定义整数数组
<string-array/> 用于定义字符串数组
<string-array name="items">
<item>程序item>
<item>手机item>
<item>通话item>
string-array>
String [] arr=getResources().getStringArray(R.array.items);
android:entries=”@array/items”
说明:Drawable资源通常保存在res/drawable目录中,实际上是保存在res/drawable-
hdpi,res/drawable-ldpi,res/drawable-mdpi,/res/drawable-xhdp目录下,其中,分
别为高分辨率,低分辨率,中分辨率,超高分辨率的图片
在Activity中使用
常用的状态属性如下
Android:state_checked 表示是否处于勾选状态,属性值为true/false
Android:state_enabled 表示是否处于可用状态,属性值为true/false
Android:state_focused 表示是否处于获得焦点状态,属性值为true/false
Android:state_pressed 表示是否处于被按下状态,属性值为true/false
Android:state_selected 表示是否处于被选中状态,属性值为true/false
注意背景设置为颜色时,不能在drawable选择器中android:drawable中直接设置颜色
必须在color中先建立颜色代码,然后在用android:drawable="@color/red"
shape
资源绘制一个特定的形状,比如矩形、椭圆等。如果你想自己动态的绘制二
位图形,那么我们就可以使用 ShapeDrawable
资源对象,用 ShapeDrawable
,我们可以绘制我
们所能想象的形状。一个 ShapeDrawable
需要一个 Shape
对象来管理呈现资源到UI Screen
,
如果没有 Shape
设置,那么会默认使用 RectShape
对象。
ShapeDrawable
被定义在一个XML文件中,以
元素起始。其内部的每一
个 Drawable
资源内嵌在
元素中
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<gradient
android:startColor="#00f"
android:endColor="#00f"
android:angle="45"
android:type="sweep"/>
<padding android:left="7dp"
android:top="7dp"
android:right="7dp"
android:bottom="7dp" />
<corners android:radius="8dp" />
shape>
上、左部分规定了图像的可拉伸部分,而右、下部分规定了图像的内容区域。
我要一步一步往上爬
在最高点乘着叶片往前飞
任风吹干流过的泪和汗
我要一步一步往上爬
等待阳光静静看着它的脸
小小的天有大大的梦想
我有属于我的天
任风吹干流过的泪和汗
总有一天我有属于我的天