Android资源文件

android中的资源引用语法:

@[package:]type/name

type有以下几种类型

drawable、id、layout、string、attr、plurals、string-array

package表示包名,如果不定义包名的话则根据应用程序的本地资源和本地R.java进行解析。如果package指定为android:的话,则使用android.R.java进行解析。也就是说资源可以使用自己定义的,也可以使用android的sdk中提供的。如:

<TextView android:id="@+id/text" />    //使用本地id:text,如果不存在的话则新建该id

        <TextView android:id="@android:id/text"    //使用android.R.java中的id:text,如果不存在则会出错
        />


【id的重用】

如上面所说,如果在定义id时没有+号,则表示使用已经存在的id,即重用id。那么如何定义一个id用于重用呢?

可以在/res/values下的xml文件中定义可重用的id,使用资源标记item来定义,不将它依附到任何特地的资源。

<resources>
    <item type="id" name="text"/>
</resources>


【已编译和未编译的资源】

Res资源文件夹中几个重要的子目录及保存的资源类型

drawble:位图

layout: 布局

values: 数组、颜色、尺寸、字符串和样式

xml: 已编译的任意xml文件

raw: 未编译的原始文件

anim: 已编译的动画文件

在生产apk时,会将除raw文件夹以外的所有资源都打包到apk中


【字符串数组】

可以在资源文件中定义字符串数组,方便重用。字符串数组定义于/res/string文件夹下

<resources>
    <string-array name="test_array">
        <item>one</item>
        <item>two</item>
        <item>three</item>
    </string-array>
</resources>

使用方式(在activity中):

Resources resource = this.getResources();
String[] args = resource.getStringArray(R.array.test_array); //获取字符串数组
ListView listView = new ListView(this); //将字符串数组作为列表显示
listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, args));
setContentView(listView);



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值