zoukankan      html  css  js  c++  java
  • Android中资源文件的使用

      

      Android中资源文件的使用概览。

    Android中的资源访问

      Android中的资源是指非代码部分,指外部文件。

      assets中保存的一般是原生的文件,例如MP3文件,Android程序不能直接访问,必须通过AssetManager类以二进制流的形式来读取。

      res中的资源可以通过R资源类直接访问。

      R类是自动生成的,在该类中根据不同的资源类型生成了相应的内部类,该类包含了系统中使用到的所有资源文件的标识。

     

    1.在代码中使用资源文件

      在代码中访问资源文件,是通过R类中定义的资源文件类型和资源文件名称来访问的。

      具体格式为:

      R.资源文件类型.资源文件名称

      另外,除了访问用户自定义的资源文件,还可以访问系统中的资源文件。

      访问系统中的资源文件的格式为

      android.R. 资源文件类型.资源文件名称

     

    2.在其他资源文件中引用资源文件

      经常会在布局文件中引用图片、颜色资源、字符串资源和尺寸资源。

      在其他资源中引用资源的一般格式是:

      @[包名称:]资源类型/资源名称

     

    使用颜色资源

      颜色值定义的开始时一个#号,后面是Alpha-RGB的格式。

      例如:

      #RGB

      #ARGB

      #RRGGBB

      #AARRGGBB

      引用资源格式:

      Java代码中:R.color.color_name

      XML文件中:@[package:]color/color_name

      使用时res\values\目录下,定义一个colors.xml文件,里面存放颜色名字和颜色值的键值对。

      如:

    <resources>
        <color name="red_bg">#f00</color>
        <color name="blue_text">#0000ff</color>
    </resources>

      其他资源如字符串、尺寸都是类似的方法。

    使用字符串资源

      创建字符串资源文件strings.xml.里面内容也是键值对

      在Java代码中引用字符串资源R.string.string_name

      可如下取得:

      String str = getString(R.string.string_name).toString();

      在xml文件中引用字符串资源:@[package:]string/string_name

     

    使用尺寸资源

      尺寸资源被定义在res\values\dimens.xml文件中。

      Android中支持的尺寸单位:

    单位表示

    单位名称

    说明

    dip 

    设备独立像素 

    不同设备不同的显示效果,dip与屏幕密度有关 

    px

    像素

    屏幕上的真实像素表示,不同设备不同显示屏显示效果相同

    in

    英尺

    基于屏幕的物理尺寸

    mm

    毫米

    基于屏幕的物理尺寸

    pt

    点(磅)

    英尺的1/72

    dp

    和密度无关的像素

    相对屏幕物理密度的抽象单位

    sp

    和精度无关的像素

    和dp类似,与刻度无关的像素,主要处理字体大小

      引用尺寸资源:

      在Java代码中: R.dimen.dimen_name

      在xml文件中:@[package:]dimen/dimen_name

     

    使用原始XML资源

      XML文件定义在工程的res\xml\目录下,通过Resources.getXML()方法来访问。

      获得原始XML文件的思路是,通过getResources().getXml()获得XML原始文件,得到XmlResourceParser对象,通过该对象来判断是文档的开始还是结尾、是某个标签的开始还是结尾,并通过一些获得属性的方法来遍历XML文件,从而访问XML文件的内容。

     

    使用drawables资源

      drawable资源是一些图片或者颜色资源,主要用来绘制屏幕,通过Resources.getDrawable()方法获得。

      drawable资源分为三类:Bitmap File(位图文件)、Color Drawable(颜色)、Nine-Patch Image(九片图片)。

      Android中支持的位图文件有png、jpg和gif

      引用位图资源的格式:

      Java代码中:R.drawable.file_name

      XML文件中:@[package:]drawable/file_name

     

    使用布局(layout)资源

      布局资源是Android中最常用的一种资源,将屏幕中组件的布局方式定义在一个XML文件中,类似于Web中的HTML页面。

      布局文件位于res\layout\中,名称任意。Android通过LayoutInflater类将XML文件中的组件解析为可视化的视图组件。

      在Activity中,调用Activity.setContentView()方法,将布局文件设置为Activity的界面,使用findViewById()方法来得到布局中的组件。

      引用布局文件:

      Java代码中:R.layout.my_layout

      XML文件中:@[package:]layout/my_layout

     

    使用菜单资源

      任何视图组件的创建方式都有两种:一种通过在布局文件中声明创建;另一种通过在代码中创建。

      Android中的菜单分为选项菜单、上下文菜单和子菜单,都可以在XML文件中声明定义,在代码中通过MenuInflater类使用。

      菜单资源文件也是XML文件,放在工程res\menu\目录下。通过R.menu.my_menu的方式来引用。

      典型菜单资源文件的结构:<menu>根元素,在根元素里会嵌套<item>和<group>子元素,<item>元素中也可嵌套<menu>形成子菜单。

      时间和精力有限,不能对每一个类型都做详细的例子研究,只好在实际的应用中综合起来再慢慢体会了。加油!

  • 相关阅读:
    R获取指定GO term和KEGG pathway的gene list基因集
    统计和数学中常见的定理汇总 | 大数定律 | 中心极限定理
    Genome Aggregation Database (gnomAD) 简介 | 参考人群等位基因频率数据库
    SC3聚类 | 拉普拉斯矩阵 | Laplacian matrix | 图论 | R代码
    Bayesian Statistics for Genetics | 贝叶斯与遗传学
    似然函数 | 最大似然估计 | likelihood | maximum likelihood estimation | R代码
    如何选题?| 什么样的科学问题 | 研究项目才是有意义的?| scientific method
    响应面分析 | response surface analysis | R代码
    乌龙茶生产过程中挥发性成分吲哚的形成 | Formation of Volatile Tea Constituent Indole During the Oolong Tea Manufacturing Process
    PPI | protein-protein interaction | 蛋白互作分析 | gene interaction | 基因互作
  • 原文地址:https://www.cnblogs.com/mengdd/p/2823208.html
Copyright © 2011-2022 走看看