它就在Android源代码中的值/strings.xml s.xml中--为什么它不在android.R中呢?
编辑:我指的是Android的内置字符串资源(android.R.string.…
),而不是我自己的项目的资源--因此,虽然我可以使用android.R.string.cancel
,但我不能使用android.R.string.share
,尽管两者都是在安卓源代码中的同一个文件中声明的
发布于 2013-04-04 18:45:55
它们只是资源文件夹下的资源。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="share">hello</string>
</resources>
上面的资源在R.java文件中有一个条目,在您的包名下。您可以打开R.java并查看它。
public static final int share=0x7f040000;
您可以将Strings.xml中的字符串称为
R.String.share
R.strin.share是一个int。
您还可以将字符串作为
String s= getResources().getString(R.string.share);
编辑:
http://developer.android.com/guide/topics/resources/accessing-resources.html#PlatformResources。
在标题访问平台资源下检查上面链接中的主题
Android包含许多标准资源,如样式、主题和布局。要访问这些资源,请将资源引用限定为android包名。
有关所有资源的列表,请检查链接
http://developer.android.com/reference/android/R.html
来自http://developer.android.com/reference/android/R.string.html的列表
发布于 2013-04-04 19:31:43
您正在为哪个SDK版本编译??请检查相同SDK版本的strings.xml。我认为目标SDK版本和strings.xml之间存在一些不匹配(您指的是“共享”存在的地方)
不过,我将建议在应用程序strings.xml中添加您自己的“共享”字符串,以避免由于Android支离破碎而产生不必要的问题。
发布于 2013-04-04 18:34:43
R是系统的R
你的R只是你自己的包名中的R。因此,在引用它时,只需将其命名为R.string.share
而不是android.R.string.share
。
https://stackoverflow.com/questions/15818944
复制相似问题