`
lovecontry
  • 浏览: 1095126 次
文章分类
社区版块
存档分类
最新评论

Android中的字符串

 
阅读更多
使用字符串(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中字符串的保存和读取

    ### 如何在Android中实现字符串的保存和读取 在Android开发过程中,经常需要处理数据的持久化问题,其中一种常见的需求就是对字符串进行保存和读取。本文将详细介绍如何利用Java代码实现在Android应用程序中对字符...

    Android存储字符串数据到txt文件

    Android存储字符串数据到txt文件是Android开发中的一种常见需求,对于大多数开发者来说,存储字符串数据到txt文件是一种非常有用的功能。今天,我们将详细介绍如何在Android中存储字符串数据到txt文件。 Android...

    Android字符串运算的计算器

    通过掌握这些知识点,开发者可以创建一个功能完备且健壮的Android字符串运算计算器应用,满足用户在移动设备上进行复杂计算的需求。在实际开发过程中,还可能涉及性能优化、本地化支持、主题定制等更多细节,以提供...

    Android中为字符串添加修饰的练习题实现提示与解决方案(共9张PPT).ppt

    Android中为字符串添加修饰的练习题实现提示与解决方案是 Android 应用程序开发中的一个重要主题。本文将通过详细的练习题和解决方案,指导读者学习如何在 Android 应用程序中为字符串添加修饰,包括如何在应用程序...

    Android relaceALL替换字符串中的反斜杠

    在`Android`应用中,如果你想要替换字符串中的所有反斜杠,代码可能如下所示: ```java String originalString = "Hello\\World\\Again"; String replacedString = originalString.replaceAll("\\\\", "/"); ``` ...

    android字符串和16进制转换

    在Android中,将字符串转换成16进制的常见方法是遍历字符串中的每个字符,将其ASCII码转换为16进制字符串。以下是一个简单的示例: ```java public String stringToHex(String input) { StringBuilder sb = new ...

    android 判断字符串是否是日期格式

    在Android开发中,判断一个字符串是否符合日期格式是一项常见的任务,尤其在处理用户输入或者解析数据时。这个任务可以通过多种方式来实现,涉及到日期时间处理、正则表达式以及Java或Android提供的日期解析类。以下...

    Android常用字符串匹配正则

    isMobileSimple : 验证手机号(简单) isMobileExact : 验证手机号(精确) isTel : 验证电话号码 isIDCard15 : 验证身份证号码15位 isIDCard18 : 验证身份证号码18位 isEmail : 验证邮箱 isURL : 验证URL ...

    Android中使用字符串资源完成教学案例的代码清单.pdf

    这里假设我们需要隐藏字符串中的某个子串,所以创建了一个替代字符串`sr`,并用星号`*`填充。然后,使用`substring()`方法找到需要替换的子串,并用`replace()`方法进行替换。最后,通过`tv.setText(s)`将处理后的...

    截取特定部分字符串

    `indexOf()`和`lastIndexOf()`方法可以用于查找字符串中的开始和结束标记。例如,如果我们要找到字符串`str`中特定子串`startMark`和`endMark`的位置,可以用`str.indexOf(startMark)`和`str.lastIndexOf(endMark)`...

    Android中Split()字符串分割特殊用法案例详解

    split()分割字符串 1.不同环境下的区分 Java:分割字符串不能写成split(“$”)//$为要分割的字符 Android:分割字符串需要加上中括号split(“[$]”)/...所以想要使用 | ,必须用 \ 来进行转义,而在java字符串中,\

    Android中使用XML文件定义字符串.pdf

    在Android应用开发中,有效地管理和使用字符串资源是至关重要的,特别是在构建用户界面和处理本地化时。Android系统提供了一种规范的方式来定义和管理这些字符串,那就是通过XML文件。本篇文章将详细阐述如何在...

    Android-android执行字符串代码--实现接口可配置跳转任何Activity

    在Android应用开发中,有时我们需要根据特定的业务需求动态地执行字符串表示的代码,例如,通过接口配置来跳转到不同的Activity。这个场景通常出现在插件化开发、动态加载或运行时权限处理等复杂场景中。本文将详细...

    Android String字符串数组动态增加

    在Android开发中,String字符串数组是一种常见的数据结构,用于存储一系列相关的文本信息。在某些情况下,我们可能需要在运行时动态地向已存在的字符串数组中添加元素,而非仅仅在XML资源文件中静态定义。这就涉及到...

    Android开发之部分字符串可实现超链接点击事件的方法源码

    首先,Android提供了TextView和WebView两种主要方式来处理字符串中的超链接。对于TextView,我们可以通过设置SpannableString和ClickableSpan来实现。以下是一个简单的示例: ```java TextView textView = ...

    Android DrawText字符串的绘制

    Android DrawText 字符串的绘制 Android DrawText 字符串的绘制是 Android 平台上的一种常见的绘制技术,用于在屏幕上显示文字信息。在 Android 平台上,DrawText 字符串的绘制是通过使用 Canvas 和 Paint 对象来...

    Android-一款自动对dex文件中的字符串进行加密Android插件工具

    标题提到的"Android-一款自动对dex文件中的字符串进行加密Android插件工具"是指用于增强应用安全性的技术实践,特别是针对 Dex 文件(Dalvik 可执行文件)中的字符串进行加密。在Android系统中,Dex文件包含了应用...

    Android字符串国际化

    以上内容仅为基础的Android字符串国际化的介绍,实际开发中可能还需要考虑日期、数字、货币等其他类型的国际化问题,以及如何在测试阶段有效地验证不同语言版本的正确性。在实际项目中,开发者应结合具体需求和最佳...

    android解析JSON字符串

    Android 解析 JSON 字符串是 Android 应用程序中非常常见的一种数据交互方式。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。 在 Android 中,解析 ...

    androidmap转json字符串、list转json字符串工具类.zip

    在Java中,我们可以使用`org.json`库或者Gson库将Map转换为JSON字符串。这个工具类可能包含以下方法: ```java public static String mapToJsonString(Map, Object&gt; map) { // 使用Gson库进行转换 Gson gson = ...

Global site tag (gtag.js) - Google Analytics