使用字符串(string)资源
在一个Android工程中,我们可能会使用到大量的字符串作为提示信息。这些字符串都可以作为字符串资源声明在配置文件中,从而实现程序的可配置性。
在代码中我们使用Context.getString()方法,通过传递资源ID参数来得到该字符串,也可以在其他资源文件中引用字符串资源,引用格式为:"@string/字符串资源名称。
字符串资源XML文件的定义
我们通过表来说明字符串资源是如何定义的,包括资源的位置、XML文件的格式、获得资源的方法和引用资源的方法等。
表字符串资源得定义和使用
资源位置
|
res/values/strings.xml
|
字符串XML文件
格式
|
使用<?xml version="1.0" encoding="utf-8"?>
<resources>根元素
<string>子元素:<string name=
color_name>string_value</string>
|
获得字符串资源
的方法
|
Resources.getString()
|
引用字符串资源
的格式
|
Java代码中:R.string.string_nameXML文件中:@[package:]string/string_name
|
下面将通过一个实例来演示资源文件的用法。在该实例中用到两个字符串资源:一个在布局文件中引用;另一个在Java代码中引用。实例步骤说明如下。
在该工程的res\values\目录下,创建一个字符串资源文件stirngs.xml,内容如下所示:
Java代码:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Test Resources</string>
<string name="test_str1">从代码中引用!</string>
<string name="test_str2">从资源文件引用!</string>
</resources>
在该工程的res\layout\目录下,定义一个布局文件test_string.xml。在该布局文件中添加两个TextView视图对象:第一个TextView的文本内容直接引用strings.xml文件中的资源;第二个TextView的文本内容在代码中设置。
Java代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="
http://schemas.android.com/apk/res/android" android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:text="@string/test_str1"
android:id="@+id/myTextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:text=""
android:id="@+id/myTextView02"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
在工程的com.amaker.ch03.string包中,创建一个TestStringActivity类。在该类的onCreate()方法中,设置当前的视图布局,并获得TextView实例。通过Context.getString()方法,从字符串资源中获得字符串常量,并将其设置为TextView的文本内容。
Java代码:
package eoe.demo.string;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import com.amaker.test.R;
/*
*
*
* @author 郭宏志
* 测试字符串资源
*/
public class TestStringActivity extends Activity {
private TextView myTextView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_string);
myTextView = (TextView)findViewById(R.id.myTextView02);
String str = getString(R.string.test_str2).toString();
myTextView.setText(str);
}
}
分享到:
相关推荐
如何在安卓软件中用代码实现字符串的保存与读取
主要为大家详细介绍了Android存储字符串数据到txt文件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
一个实用性比较强的利用字符串来运算的计算器,可一次输入完整个运算式再计算出结果,输入框也加了判断,不能非法输入数据
输入一个字符串,判断字符串是否是日期格式
android 的字符串 ascII码 16进制的相互转换
isMobileSimple : 验证手机号(简单) isMobileExact : 验证手机号(精确) isTel : 验证电话号码 isIDCard15 : 验证身份证号码15位 isIDCard18 : 验证身份证号码18位 isEmail : 验证邮箱 isURL : 验证URL ...
这个工程简单写了如何使用replace替换字符串的反斜杠,有需要的可以下载
split()分割字符串 1.不同环境下的区分 Java:分割字符串不能写成split(“$”)//$为要分割的字符 Android:分割字符串需要加上中括号split(“[$]”)/...所以想要使用 | ,必须用 \ 来进行转义,而在java字符串中,\
android解析JSON字符串,简单形式和复杂形式。
Android String字符串数组动态增加Android String字符串数组动态增加Android String字符串数组动态增加Android String字符串数组动态增加
Android字符串资源的测试Demo,包括String、String Array、Plurals类型。 String类型通过例子测试了字符串格式化和带HTML标记的各种使用情况。
java,android map形式和数组list转json字符串 可直接调用
Android DrawText字符串的绘制 Android DrawText字符串的绘制
android执行字符串代码--实现接口可配置跳转任何Activity
Android中使用XML文件定义字符串.pdf 学习资料 复习资料 教学资源
Android开发之部分字符串可实现超链接点击事件的方法源码更多查看博客:https://blog.csdn.net/xiayiye5/article/details/83022854
使用StringFog插件自动对 dex 中的字符串进行加密
Android图片Bitmap和字符串String之间相互转换的工具类,外加项目代码,封装好的,直接可以用,
解决截取字符串中带有汉字的问题,以防截取时汉字截取一般出现错误情况
Allatori具有以下几种保护方式:命名混淆,流混淆,调试信息混淆,字符串混淆,以及水印技术。对于教育和非商业项目来说这个混淆器是免费的。新版本支持war和ear文件格式,并且允许对需要混淆代码的应用程序添加...