版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
复杂资源Android汇报人:XXX目录1345Drawable资源数组资源菜单资源资源自适应2案例实现01章节PARTDrawable资源添加相关标题文字添加相关标题文字添加相关标题文字添加相关标题文字Deawable资源Drawable资源是Android中使用最多的资源,大多用于界面展示显示,包括两类资源:图片型资源和XML文件型资源。Drawable是一个抽象类型,包含13种子类型,其中多数类型使用XML文件描述,只要XML文件可以被系统编译成Drawable子类的对象,那么这个XML文件就可以作为Drawable资源名称功能BitmapDrawable表示一个位图图像NinePatchDrawable一种特殊类型的BitmapDrawable,可以根据内容进行伸缩的位图InsetDrawable可以在现有Drawable的内部创建一个空间GradientDrawable可以绘制线性渐变或径向渐变的图形ClipDrawable根据定义的Gravity剪裁另一个Drawable的内容ShapeDrawable可以绘制基于XML形状定义的图形LayerDrawable可以将多个Drawable组合成一个,它们以层叠的方式显示ScaleDrawable根据需要缩放内部的DrawableLevelListDrawable根据一个等级值选择合适的DrawableTransitionDrawable可以在两个Drawable之间执行渐变动画StateListDrawable根据视图状态改变其显示的DrawableAnimationDrawable可以播放一系列Drawable资源来实现动画LevelListDrawable可以根据一个等级值选择合适的Drawable图片类型资源一般放在mipmap目录下。为了适应不同分辨率显示要求,在mipmap目录下放文件时,一般需要准备多个不同分辨率的同名图片文件在Android世界中,XML也可以描述出用于显示的图形效果,例如描述形状、颜色、背景等信息的综合展示。XML型资源放在drawable目录下。1)在Java中访问图片资源的语法形式是:[<package>.]R.drawable.<文件名>(或者:[<package>.]R.mipmap.<文件名>)2)在XML中访问资源的语法形式是:@[<package>:]drawable/文件名(或者:@[<package>:]mipmap/文件名)Drawable资源作用定义基本的几何图形,如矩形,圆形,线条等,根元素是<shape../>
。在shapdrawable中可添加size、gradient、solid、stroke、conner、padding节点。定义各节点功能及属性见教材表2-6应用在组件的属性中使用定义的ShapeDrawable资源Drawable资源ShapeDrawable节点名称属性名称功能
visible设置是否可见shape形状,可选:rectangle(矩形,包括正方形),oval(椭圆,包括圆),line(线段),ring(环形)innerRadiusRatio当shape为ring才有效,表示环内半径所占半径的比率,如果设置了innerRadius,会被忽略innerRadius当shape为ring才有效,表示环的内半径的尺寸thicknessRatio当shape为ring才有效,表环厚度占半径的比率thickness当shape为ring才有效,表示环的厚度,即外半径与内半径的差useLevel当shape为ring才有效,表示是否允许根据level来显示环的一部分sizewidth图形形状宽度height图形形状高度gradientstartColor渐变的起始颜色centerColor渐变的中间颜色endColor渐变的结束颜色type渐变类型,可选(linear,radial,sweep),线性渐变(可设置渐变角度),发散渐变(中间向四周发散),平铺渐变solidcolor背景填充色,设置solid后会覆盖gradient设置的所有效果strokewidth边框的宽度color边框的颜色dashWidth边框虚线段的长度dashGap边框的虚线段的间距connerradius圆角半径,适用于上下左右四个角topLeftRadius左上的圆角值topRightRadius右上的圆角值BottomLeftRadius左下的圆角值BottomRightRadius右下的圆角值paddingleft左边距top上边距right右边距bottm下边距<?xmlversion="1.0"encoding="utf-8"?><shapexmlns:android="/apk/res/android"android:visible="true"android:shape=“oval”>
<!--设置一个黑色边框-->
<strokeandroid:width="2px"android:color="#000000"/>
<!--渐变-->
<gradient
android:angle="270"
android:endColor="#C0C0C0"
android:startColor="#FCD209"/>
<!--设置一下边距,让空间大一点-->
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp"/></shape><TextView
android:id="@+id/txtOne"
android:layout_width="200dp"
android:layout_height="64dp"
android:textSize="18sp"
android:gravity="center"
android:background="@drawable/txt_rectborder"
android:text="矩形边框的TextView"/>作用StateListDrawable资源是定义在XML文件中的Drawable对象,能根据组件的状态来呈现不同的图像。定义StateListDrawable资源放在项目的res/drawable目录中,StateListDrawable资源文件的根元素是<selector></selector>,在该元素中可以包含多个<item></item>元素。每个item元素可以设置两个属性。android:color或android:drawable:用于指定颜色或Drawable资源。android:state_xxx:用于指定一个特定的状态应用在组件的属性中使用定义的StateListDrawable资源Drawable资源StateList资源状态属性描述state_active是否处于激活状态,属性值:true或falsestate_checked是否处于勾选状态,属性值:true或falsestate_enabled是否处于可用状态,属性值:true或falsestate_first是否处于开始状态,属性值:true或falsestate_focused是否处于获得焦点状态,属性值:true或falsestate_last是否处于结束状态,属性值:true或falsestate_middle是否处于中间状态,属性值:true或falsestate_pressed是否处于被按下状态,属性值:true或falsestate_selected是否处于被选择状态,属性值:true或falsestate_window_focused窗口是否已经获得焦点状态,属性值:true或false<?xmlversion="1.0"encoding="utf-8"?><selectorxmlns:android="/apk/res/android"><itemandroid:state_focused="true"android:color="#f44"/><itemandroid:state_focused="false"android:color="#111"/></selector><EditText
android:id="@+id/editText1"android:layout_width="fill_parent"android:layout_height="wrap_content"android:textColor="@drawable/edittext_focused"android:ems="10"/><EditText
android:id="@+id/editText2"android:layout_width="fill_parent"android:layout_height="wrap_content"android:textColor="@drawable/edittext_focused"android:ems="10"/>02章节PART数组资源添加相关标题文字添加相关标题文字添加相关标题文字添加相关标题文字作用管理大量类型相同的有关联的数据,可以采用数组,Android不推荐在Java代码中定义数组,而是推荐使用数组资源文件的方式来定义数组定义数组资源文件位于项目的res/values目录下,根元素是<resources></resources>标记,在该元素中可以包含3类子元素。在起始标记和结束标记中间使用<item></item>标记定义数组中的元素应用1)在Java代码中使用数组资源的语法形式是:[<package>.]R.array.数组名2)在XML文件中使用数组资源的语法形式是:@[<package>:]array/数组名数组资源<resources><string-arrayname="countries"><item>中国</item><item>美国</item><item>法国</item><item>英国</item><item>俄罗斯</item></string-array><integer-arrayname="numbs"><item>1</item><item>2</item><item>14</item><item>23</item><item>86</item><item>47</item></integer-array></resources>
<ListView
android:id="@+id/listView1"
android:entries="@array/numbs"
android:layout_width="match_parent"
android:layout_height="wrap_content"></ListView>03章节PART菜单资源添加相关标题文字添加相关标题文字添加相关标题文字添加相关标题文字作用Android推荐在一个XML菜单资源文件中定义菜单而不是在代码中定义,然后在代码中使用这个菜单资源。定义菜单资源文件通常放置在项目的res/menu目录下,在创建项目时,默认没有创建menu目录,开发人员需要手工创建这个目录。菜单资源的根元素是<menu></menu>,在该标记中可以包含一个或多个以下的两种元素。<item></item>菜单项<group></group>分组应用1)选项菜单2)上下文菜单菜单资源注意:如果Activity是继承于AppCompatActivity,标题栏和菜单栏可能不显示,可在项目配置文件AndroidManifist.xml的application节中将应用显示主题修改为android:theme="@style/Theme.AppCompat.DayNight.DarkActionBar"。表2-7Item常用属性属性描述android:id为菜单项设置ID,即唯一标识android:title为菜单项设置标题android:alphabeticShortcut为菜单项指定字符快捷键android:numericShortcut为菜单项指定数字快捷键android:icon为菜单项设置图标android:enabled菜单项是否可用android:checkable菜单项是否可选android:checked菜单项是否已选中android:visible菜单项是否可见表2-8group常用属性属性描述android:id为菜单组设计ID,及唯一标识android:checkableBehavior指定菜单组内各项菜单的选择行为,可选值:none(不可选)、all(多选)、single(单选)android:menuCategory对菜单进行分类,指定菜单的优先级,可选值:container、system、secondary、alternativeandroid:enabled指定菜单组中的全部菜单项是否可用android:visible指定菜单组中的全部菜单项是否可见定义一个包含两个子菜单的项和一个包含了三个菜单项的菜单组。<menuxmlns:android="/apk/res/android">
<itemandroid:id="@+id/item1"android:title="File"android:alphabeticShortcut="F">
<menu>
<itemandroid:id="@+id/item2"android:title="NewFile"/>
<itemandroid:id="@+id/item3"android:title="FileSave"/>
</menu>
</item>
<groupandroid:id="@+id/operatie">
<itemandroid:id="@+id/item5"android:title="Copy"/>
<itemandroid:id="@+id/item6"android:title="Cut"/>
<itemandroid:id="@+id/item7"android:title="Paste"/>
</group></menu>(1)选项菜单(optionmenu)@OverridepublicbooleanonCreateOptionsMenu(Menumenu){MenuInflater
inflater=getMenuInflater();inflater.inflate(R.menu.test_menu,menu);returnsuper.onCreateOptionsMenu(menu);}@OverridepublicbooleanonOptionsItemSelected(MenuItem
item){//Handleitemselectionswitch(item.getItemId()){caseR.id.item2:doSelectItem2();returntrue;caseR.id.item3:.....................default:returnsuper.onOptionsItemSelected(item);}}(2)上下文菜单(contextmenu)TextView
tv=(TextView)findViewById(R.id.show);registerForContextMenu(tv);@OverridepublicvoidonCreateContextMenu(ContextMenu
menu,Viewv,ContextMenuInfo
menuInfo){super.onCreateContextMenu(menu,v,menuInfo);MenuInflater
inflater=getMenuInflater();inflater.inflate(R.menu.test_menu,menu);menu.setHeaderIcon(R.drawable.ic_launcher);menu.setHeaderTitle(“请选择”);}@OverridepublicbooleanonContextItemSelected(MenuItem
item){//Handleitemselectionswitch(item.getItemId()){caseR.id.item2:doSelectItem2();returntrue;ase
R.id.item3:doSelec
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年山东能源集团西北矿业有限公司招聘(200人)笔试历年典型考点题库附带答案详解
- 2026山西中煤一局集团有限公司应届高校毕业生招聘19人(第二批次)笔试历年典型考点题库附带答案详解
- 2026天津中煤进出口有限公司面向中国中煤内部及社会招聘第三批电力人才21人笔试历年备考题库附带答案详解
- 2026中国华电集团有限公司天津分公司校园招聘(第一批)笔试历年难易错考点试卷带答案解析
- 2026年山东省莱阳市高二化学下册期末考试模拟检测卷含答案【黄金题型】
- 2026年贵州省凯里市高二化学下册期末考试模拟考试卷附答案【研优卷】
- 2026年福建省武夷山市高二化学下册期末考试模拟考试卷及参考答案
- 2026年吉林省图们市高二化学下册期末考试模拟卷及参考答案【综合卷】
- 2026年湖北省石首市高二化学下册期末考试模拟检测卷附参考答案【综合题】
- 2026年山西省潞城市高二化学下册期末考试模拟检测卷附参考答案【轻巧夺冠】
- 土建工程重大危险源的识别和控制措施
- 冀教版六年级语文下册期末试题
- 钢板进货检验记录
- 口腔黏膜上皮肿瘤和瘤样病变(口腔组织病理学课件)
- VDA6.5产品审核检查表
- 光谷之星中国建筑科技馆建筑设计方案文本
- GB/T 42125.14-2023测量、控制和实验室用电气设备的安全要求第14部分:实验室用分析和其他目的自动和半自动设备的特殊要求
- 资产负债表、现金流量表、利润表模板
- 妇科腹腔镜手术的麻醉
- 煤矿职业病危害防治领导机构
- GB/T 21075-2007水库诱发地震危险性评价
评论
0/150
提交评论