资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,项目四,规范应用资源,学习目标,了解,Android,应用资源的类型,掌握,Android,中数组的使用方法,了解界面设计的样式,掌握国际化的相关知识,情景导入,各式各样的,App,已经进入了人们的生活,用户对于,App,的实用性以及美观程度也越来越重视,应用规范资源可以便捷的对界面进行设计、美化。本项目主要实现使用应用资源对,Android,程序界面进行美化以及填充界面信息。,任务,描述,本任务将设计一款使用应用资源开发的,“,天津美景系统,”,软件,实现,strings.xml,中名称的编写,在,colors.xml,中编写界面所需颜色,在,mystyle.xml,中编写界面所需的样式主题,在,arrays.xml,编写数组信息,在,strings.xml,中编写所需内容,使用线性布局方式来设计登录系统界面,实现,ListView,填充数据,在,menu,文件下,main.xml,中编写系统按键信息,在点击系统按键实现语言种类切换,这个和第一个实现,xxx,中的编写是不是重复,【基本框架】,基本框架如图,4.1,所示,将框架图转换成的效果如图,4.2,所示,任务,描述,图,4.1,天津美景系统主界面框架图,4.2,天津美景系统主界面,效果图,任务技能,技能点,1,应用资源,应用资源指与,UI,相关的资源,如,UI,布局、字符串和图片等。代码和资源分开使应用程序只需编译一次,且能够支持不同的,UI,布局。这种特性使应用程序运行时可以适应不同的屏幕大小和密度,还可以适应,不同的国家和语言等。,Android,应用资源分为两大类,分别是,assets,和,res,。其中,assets,类资源存放在工程根目录,assets,的子目录下,在,assets,中保存的资源文件最终会被打包在,apk,中,需根据指定文件名进行使用。,res,类资源存储在工程根目录,res,子目录下,在,res,中的资源会被赋予资源,ID,,在程序中通过,ID,对资源进行访问。,res,类资源可根据不同用途划分出以下九类。,任务技能,animator,:该类资源以,XML,文件形式保存在,res/animator,目录下,用以实现属性动画所需功能及效果,anim,:该类资源以,XML,文件形式保存在,res/anim,目录下,用以描述补间动画,color,:该类资源以,XML,文件形式保存在,res/color,目录下,用以描述颜色选择。并且可规定同一对象在不同状态下显示的不同颜色,对象状态可分为,pressed,、,focused,、,selected,、,checkable,、,checked,、,enabled,、和,window_focused,等七种,drawable,:它用于描述可绘制对象,该类资源以,XML,文件形式或者,Bitmap,文件形式保存在,res/drawable,目录下,任务技能,layout,:该类资源以,XML,文件形式保存在,res/layout,目录下,用以描述页面布局,menu,:该类资源以,XML,文件形式保存在,res/menu,目录下,用以描述应用程序菜单,raw,:该类资源以任何形式文件保存在,res/raw,目录下,与,assets,类资源相同,被赋予,ID,,可在程序中通过,ID,进行访问,values,:用以描述简单值如数组、颜色、尺寸、字符串和样式等值,该类资源以,XML,文件形式保存在,res/values,目录下,在,res/xml,目录下,用来描述应用程序配置信息,任务技能,以上九中类型的资源文件,除,Bitmap,文件的和,drawable,类型资源以及,raw,类资源均为文本格式的,XML,文件,存储方式如表,4.1,所示。,任务技能,技能点,2,数组资源,(array),1,数组资源介绍,Android,中数组的定义方式有两种,第一种可以直接在,Android,代码中声明,第二种可以在,res/values,目录下新建一个,xml,文件,对数组资源进行声明,字符数组有,2,种声明方式,分别是,String,和,List,。,在实际开发中,最好将数据存放在资源文件中,这样来实现程序的逻辑代码与数据分离,便于项目的管理,减少对,Java,代码的修改。,任务技能,2,数组资源使用方法,Android,规定存放数组的文件必须在,res/values,文件夹下创建,推荐该文件名,arrays.xml,,以下代码定义了含有四个直辖市名称的字符串数组,,string-array name,(数组名是),citys,,数组元素在,标签中存放。,在,Android,中提供了,Resource,类,可以将数组中的内容调用出来,通过该类提供的方法可以很方便地获取资源中的数据,如资源中定义的数组。,任务技能,技能点,3,颜色资源文件(,color,),1,颜色资源介绍,在使用,UI,界面,并对其进行布局的时候,使用的控件可以通过,“,android:textColor,”,和,“,android:background,”,这两种属性,分别给文字和背景附上颜色。,(,1,)颜色定义方式,颜色,表示:颜色,通过红,(red),绿,(green),蓝,(blue),三种颜色,以及透明度,(alpha),来表示的。,颜色,开头:颜色值总是以,#,开头,无透明度,如果没有,alpha,值,默认完全不透明。,任务技能,(,2,),颜色,定义形式,:,#RGB,:红 绿 蓝 三原色值,每个值分,16,个等级,最小为,0,最大为,f,#ARGB,:透明度 红 绿 蓝 值,每个值分,16,个等级,最小为,0,最大为,f,#RRGGBB,:红 绿 蓝 三原色值,每个值分,256,个等级,最小为,0,最大为,ff,#AARRGGBB,:透明度 红 绿 蓝 值,每个值分,256,个等级,最小为,0,最大为,ff,任务技能,如图,4.3,所示十六进制颜色值。,图,4.3,颜色列表,任务技能,技能点,4,尺寸资源,1,尺寸资源介绍,尺寸在这里其实质就是控件的长宽高,以及页边距的值,如何将控件合理的布置在,UI,界面中,是十分重要的。调整尺寸经常用到的一些属性如表,4.2,所示。,任务技能,2,尺寸使用方法,尺寸存储格式及获取尺寸内容方式,具体实现方法如下所示。,任务技能,技能点,5,动画,1,动画介绍,Android,中将动画分为帧动画、补间动画、属性动画三种(具体见项目七),这些动画都可以使用,XML,文件定义,。,2,动画实现方法,动画是存储在,/res/,anim,/,目录中,也可以将其写的,Android,代码中,,XML,动画具体实现方法如下所示。,任务技能,Animation,有两种动画模式:一是,tweened animation(,渐变动画,),,二是,frame by frame(,画面转换动画,),,具体实现方法如下所示。,任务技能,技能点,6,样式与主题,1,样式与主题介绍,样式是用来指定视图或窗口的外观和格局的一组属性集合。主题是用来指定整个布局样式的属性集合。例如定义属性,layout_width,、,layout_height,等样式可以用来指定高度、宽度,还可以指定字体大小、背景颜色等等。样式以独立的资源文件形式存放在,XML,文件中。主题与样式唯一不同的地方是样式只是应用于某个控件,而主题是全屏应用与,“Activity”,。在使用手机或者应用的过程中,经常会需要应用全屏的效果,也就是隐藏上面的状态栏和标题栏,例如在一些浏览器或者手机游戏,App,中都有全屏的效果,而全屏的功能再加上其中被样式美化的控件所形成的效果就是主题。,任务技能,样式定义在一个单独的,XML,资源文件中。该,XML,文件位于,res/values/,目录中,必须使用样式文件中,作为根节点并使用,.xml,扩展名,,XML,文件名称是任意的。,2,样式与主题使用方法,(,1,),可以定义每个文件中使用的多种样式,标签,但要使用唯一名称标识该样式。,Android,样式属性设置使用的,标签,具体实现方法如下所示。,任务技能,(,2,),中的值可以是多种类型值,可以是一个关键字串,十六进制的颜色,使用样式定义后,可用在,XML,布局文件使用样式属性,具体实现方法如下所示。,任务技能,技能点,7,国际化,1,国际化介绍,Internationalization,(国际化)它的简称 是,i18n,,因为在,i,和,n,之间有,18,个字符,,localization,(本地化),简称,L10n,,用语言,_,地区的形式说明一个地区的语言时,如,zh_CN,,,zh_TW.54,。,2,国际化实现,Android,对,i18n,和,L10n,提供了非常好的支持。,Android,是通过对不同,resource,的命名来达到国际化,而没有专门的,API,来提供国际化,其实现方法是建立,values-,zh,values,-en,文件夹,在这个文件内放置,strings.xml,,根据不同的语言编写不同的,信息,。,任务技能,技能点,8,布局资源,(layout),1,布局资源介绍,布局,资源是,Android,中最常用的应用资源,本项目详细介绍布局资源使用方法。如果一个界面想在手机或者虚拟机中展现出来,必须有界面的布局文件,以,XML,文件的形式存在。,这里先介绍一下,Android,的用户界面,布局问题也会导致程序运行失败。在一个,Android,应用程序中,用户界面要通过,Views,和,ViewGroup,对象构建。,Android,中有很多种,Views,和,ViewGroup,,他们都继承自,View,类。,View,对象是,Android,平台上表示用户界面的基本单元,继承关系图如图,4.4,所示。,任务,技能,图,4.4,继承图,要将视图层次树呈现到屏幕上,就必须调用,setContenView(),方法并且传递根节点对象的引用,任务,技能,2,布局资源使用方法,下面,先来学习一下怎么在,XML,文件里写布局。下面的,XML,布局文件使用了纵向的,LinearLayout,,此不居中有一个,TextView,和一个,Button,控件,这两个控件已经在第二章学过了,这里就不再讲解。,任务,实施,第一步:在,Eclipse,中创建一个,Android,工程,命名为,“,天津美景系统,”,。,第二步:在,colors.xml,中添加界面所需颜色,。,第三步:在,mystyle.xml,中添加界面所需样式主题。,第四步:在,arrays.xml,中添加数组内容,。,第五步:创建,values-zh-rCN,文件与,values-zh-rTW,文件并且在文件中分创建。,strings.xml,在,strings.xml,中编写所需内容,。,任务,实施,第六步:合理利用应用资源设计界面,。,第七步:将,arrays.xml,中信息填充到,ListView,中,。,第八步:在,menu,下,main.xml,中编辑系统按键信息。,第九步:点击系统按键,实现标题中英文切换。,第十步:运行程序,。,任务,总结,本项目主要介绍了关于,Android,应用资源的一些知识和运用,如语言国际化和,UI,界面颜色尺寸的应用变化,能够让我们更好的去开发一个应用程序。通过项目的,学习,重点掌握如何使用应用资源实现所需效果,。,英语角,image,影像,view,视图,list,清单,array,数组,values,价值,simple,简单的,locale,场所地点,adapter,适配器,resources,来源,item,项目,
展开阅读全文