Android开发之资源使用方法总结

2014-08-19 21:58:05|?次阅读|上传:huigezrx【已有?条评论】发表评论

关键词:Android, 移动应用|来源:唯设编程网

要想载入一个格式化的字符串,你需要确保所有的格式变量均已被转义。 实现这一目的一种方式是使用TextUtils.htmlEncode( ) 方法:

import android.text.TextUtils;
...
String mySimpleWinString;
mySimpleWinString =
   getResources().getString(R.string.winLose);
String escapedwin = TextUtils.htmlEncode("Won") ;
String resultText =
   String.format(mySimpleWinString, 5, 5, escapedwin) ;

存储于resulText 变量中的返回文本为:

Score : 5 of 5 ! You Won.

现在, 像前面的winLoseStyled 字符串资源那样, 如果你需要使用风格化的字符串,那么你需要采取几个步骤来处理转义的"斜体"标记。

import android.text.Html;
import android.text.TextUtils;
...
String myStyledWinString;
myStyledWinString =
   getResources().getString(R.string.winLoseStyled);
String escapedWin = TextUtils.htmlEnçode("Won");
String resultText =
   String .format(myStyledWinString, 5, 5, escapedWin);
CharSequence styledResults = Html.fromHtml( resultText);

存储于styledResults变盘中的返回文本为:

Score : 5 of 5 ! You <i>Won</i>.

styledResults 这一变量可以用在类似于TextView 对象的用户界面控件中 ,这些风格化的文本将在其中获得正确的显示。

提示:有一种特殊的资源类型,称为<plurals> ,它可时用来定义一些具有单复数形式的字符串。 例如, 你可以为字符串" You caught a goose! " 定义一个plural (复数形式): "You caught %d geese!“。复数形式的字符事使用Resource 类的getQuantityString() 方法载入,而不是getString ()方法。 更多内容可以参考Android SDK 文档中有关复数元素的部分。

3.使用字符串数组

你可以在资源文件中指定字符串列表。这是一种存储菜单选项和下拉列表项的好方式。String数组在/res/values 工程目录的XML文件中定义,并且在构建( build) 时编译进应用程序包。

String 数组使用其相对应的<string-array>标记和若干<item> 子标记,每一个标记里面含有一个字符申。下而是一个简单数组资源主件/ res / values/array s. xml的示例:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="flavors">
        <item>Vanilla Bean</item>
        <item>Chocolate Fudge Brownie</item>
        <item>Strawberry Cheesecake</item>
        <item>Coffee, Cofee, Buzz Buzz Buzz</item>
        <item> Americone Dream</item>
    </string-array>
    <string-array name="soups">
        <item>Vegetable minestrone</item>
        <item>New England clam chowder</item>
        <item>Organic chicken noodle</item>
    </string-array>
</resources>

如前面部分所讲的一样,访问字符串数组的方法非常简单。下面的代码获取了一个名为flavors 的字符串数组:

String[] aFlavors = 
   getResources() . getStringArray(R. array:flavors);

4 使用Boolean (布尔)资源

Android 资源层级还支持其他一些基础类型。布尔资源可以用来存储一些应用程序参数或者默认值,如游戏的设定等。布尔资源定义在/res/ values 工程目录下的XML 文件中,并且在构建应用程序时编译。

4.1. 在XML 文件中定义布尔资源

布尔值需要使用<bool>标记以"名称一值"对的方式定义。它的名称即是在程序中访问特定布尔值的依据,所以需要起一个有意义的名字。

下面是/res/values/bools. xml文件中的布尔资源示例:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <bool name="bOnePlusOneEqualsTwo">true</bool>
    <bool name="bAdvancedFeaturesEnabled">false</bool>
</resources>
发表评论0条 】
网友评论(共?条评论)..
Android开发之资源使用方法总结