网站大量收购独家精品文档,联系QQ:2885784924

第3章Android中资源访问.ppt

  1. 1、本文档共95页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章Android中资源访问

;3.1Android资源简介 3.2string资源 3.3color资源 3.4dimen尺寸资源 3.5数组资源 3.6drawables资源 3.7layout布局资源 3.8menu菜单资源 3.9任意xml资源 3.10样式和主题资源 3.11使用原始资源 3.12国际化和资源自适应 ;Android应用的源代码大致可分为如下三大类: 1)Java源文件:应用的中的Activity , service , BroadcasrReceiver , ContentProvider四大组件都是采用 Java代码来实现的。 2)资源文件:主要以各种 XML文件为主,还包括.png,jpg等图片、声音文件。 3)有两个文件夹,res和assets,它们就是用来保存资源文件的。其中,assets一般保存的是原生的文件,如mp3,Android不能直接访问,必须通过AssetsManager 类以二进制流的形式来读取。res中的资源可以通过R资源类直接访问。assets中的资源很少用到,res中的资源经常使用。 ;Android资源 无法直接访问的原生资源,保存在assets目录下 可通过R资源清单类访问的资源,保存在res件夹下 ;;资源(resources)的类型(AAPT编译) ;资源(resources)文件的使用 代码中使用(R.java) setContentView(R.layout.main); Button bn=(Button)findViewById(R.id.button1) ;资源(resources)文件的使用 其他资源文件中使用 TextView android:layout_width=“fill_parent” android:layout_height=“wrap_content” android:text=“@string/styled_welcome_message” android:textColor=“@color/opaque_red” android:textSize=“@dimen/sixteen_sp”/ ;项目中的assets(资产) assets文件夹一般保存原生的文件,需要通过AssetManager类以二进制流的形式来读取 ?private?Bitmap?getImageFromAssetFile(String?fileName){ ?? ????Bitmap?image?=?null; ?? ????try{ ?? ????????AssetManager?am?=?context.getAssets(); ?? ????????InputStream?is?=?am.open(fileName); ?? ????????image?=?BitmapFactory.decodeStream(is); ?? ????????is.close(); ?? ????}catch(Exception?e){ ?? ???????? ?? ????} ?? ????return?image; ?? }?? assets中不受android平台的约束,可以建立任意子目录,但访问不太方便,一般用的不多。 以下学习,没有特别说明,都是指res文件夹中的资源;资源的小结 与值相关的(字符串,颜色值,尺寸值,整形值)放在 /res/values/下 其他的放在 /res/类型名/ 下 代码中访问时常用的方法有: findViewById( Id ); Resources res = getResources(); Drawable d=res.getdrawable( Id ); ;res/raw和assets比较(相同点) 两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制: ;res/raw和assets比较(不同点) res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID即R.id.filename;assets文件夹下的文件不会被映射到R.java中,访问的时候需要AssetManager类。 res/raw不可以有目录结构,而assets则可以有目录结构,也就是assets目录下可以再建立文件夹 ;res/raw和assets比较(不同点) // res/raw InputStream is = getResources().openRawResource(R.id.filename); //assets AssetManager am = null; am = getAssets(); InputStream is = am.op

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档