如何在android的XML和java代码中引用字符串常量
来源:互联网 发布:崔永元 转基因 知乎 编辑:程序博客网 时间:2024/06/06 08:28
使用字符串(string)资源
在一个Android工程中,我们可能会使用到大量的字符串作为提示信息。这些字符串都可以作为字符串资源声明在配置文件中,从而实现程序的可配置性。
在代码中我们使用Context.getString()方法,通过传递资源ID参数来得到该字符串,也可以在其他资源文件中引用字符串资源,引用格式为:"@string/字符串资源名称。
字符串资源XML文件的定义
我们通过表来说明字符串资源是如何定义的,包括资源的位置、XML文件的格式、获得资源的方法和引用资源的方法等。
表字符串资源得定义和使用
下面将通过一个实例来演示资源文件的用法。在该实例中用到两个字符串资源:一个在布局文件中引用;另一个在Java代码中引用。
实例步骤说明如下。
在该工程的res\values\目录下,创建一个字符串资源文件stirngs.xml,内容如下所示:
Java代码:
在该工程的res\layout\目录下,定义一个布局文件test_string.xml。在该布局文件中添加两个TextView视图对象:第一个TextView的文本内容直接引用strings.xml文件中的资源;第二个TextView的文本内容在代码中设置。
Java代码:
在工程的com.amaker.ch03.string包中,创建一个TestStringActivity类。在该类的onCreate()方法中,设置当前的视图布局,并获得TextView实例。通过Context.getString()方法,从字符串资源中获得字符串常量,并将其设置为TextView的文本内容。
Java代码:
在一个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的XML和java代码中引用字符串常量
- 在java代码里引用Sting.xml里的字符串
- android如何在xml中引用内部类的View
- 如何在Android的xml中添加带<<>>的字符串
- Android color(颜色) 在XML文件和java代码中
- android,在java代码中,如何给textview设置不同的颜色,以及引用color中资源设置颜色
- 如何在web.xml中引用其它的xml文件
- Java中字符串常量和字符串变量的区别
- 在android的xml和java代码中使用透明度动画
- android如何在xml中引用内部类?
- android如何在xml中引用内部类View
- JNI中如何在本地代码中生成和操作Java的对象和字符串,并编写应用实例
- Android在XML文件中或者java程序中引用资源的方法
- Android在XML文件中或者Java程序中引用资源的方法
- 在xml中如何引用自己定义的schema文件?
- Android开发如何在自己的项目中引用第三方代码
- 在Android java代码中如何改变文件的权限
- 在Android java代码中如何改变文件的权限
- 为什么bios将mbr装载到0x7c00地址,0x7c00怎么来的?(翻译)
- AS3发送http请求编码不对的解决方法
- MFC模块的动态链接库DLL以及静态链接库LIB编译后的调用
- 自己写的SqlHelper类
- VC++的可视化解决方案
- 如何在android的XML和java代码中引用字符串常量
- 在VS2010中使用WpdPack
- GODADDY 申请域名的经历
- 三命通会 连载一
- File Read
- 什么是Portal
- Access中关于大小写敏感查询的问题及解决方案
- C中可变参数列表函数的编写
- 运行时改变Button图片的android:drawableTop