Android中读values/xml arrays attrs colors dimens string styles

本文介绍在Android开发中关于资源文件的存储操作。对于Android资源也是非常重要的,

主要包括文本字符串(strings)、

颜色(colors)、

数组(arrays)、

动画(anim)、

布局(layout)、

图像和图标(drawable)、

音频视频(media)和其他应用程序使用的组件

这些资源都需要通过相应的资源类来进行管理。 下面请看管理这些资源的相关类:

int getColor(int id)  //对应res/values/colors.xml 
 
    Drawable getDrawable(int id) //对应res/drawable/
 
    XmlResourceParser getLayout(int id) //对应res/layout/
 
    String getString(int id) 和CharSequence getText(int id) //对应res/values/strings.xml
 
    InputStream openRawResource(int id) //对应res/raw/
 
    void parseBundleExtra (String tagName, AttributeSet attrs, Bundle outBundle) //对应res/xml/
 
    String[] getStringArray(int id) //对应res/values/arrays.xml
 
    float getDimension(int id) //对应res/values/dimens.xml

 如何获取字符串

字符串存储在/res/values/strings.xml文件中

String str = getResources().getString(R.string.hello);
 CharSequence cha = getResources().getText(R.string.app_name);

字符串数组存储在/res/values/arrays.xml文件中

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="test">
        <item>Vanilla</item>
        <item>Chocolate</item>
        <item>Strawberry</item>
    </string-array>
</resources>

String strs[] = getResources().getStringArray(R.array.test);

图片 

<array name="sample_images">
        <item>@drawable/dialog_bg</item>
        <item>@drawable/dialog_bg</item>
        <item>@drawable/dialog_bg</item>
</array>

颜色值

颜色存储在/res/values/colors.xml文件中

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="text_color">#F00</color>    
</resources>

(R.color.text_color)

尺寸值

尺寸存储在/res/values/dimens.xml文件中

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <dimen name="txt_app_title">22sp</dimen>
    <dimen name="font_size_10">10sp</dimen>
    <dimen name="font_size_12">12sp</dimen>
    <dimen name="font_size_14">14sp</dimen>
    <dimen name="font_size_16">16sp</dimen>
</resources>

float myDimen = getResources().getDimension(R.dimen.dimen标签name属性的名字);

简单的Drawable图形

<?xml version="1.0" encoding="UTF-8"?>
<resources>
    <drawable name="red_rect">#F00</drawable>
</resources>

ColorDrawable myDraw = (ColorDrawable)getResources().getDrawable(R.drawable.red_rect);

Content Color

ContextCompat.getColor(R...)
activity.getResources().getColor(R...)
Color.parseColor("#87CEFA")

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值