我有以下 /res/values/uris.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="bladder">blahblah</string>
</resources>
我在代码中访问它:
private String bladderUrl= getString(R.string.bladder);
但它返回null。我不确定为什么?
我有以下 /res/values/uris.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="bladder">blahblah</string>
</resources>
我在代码中访问它:
private String bladderUrl= getString(R.string.bladder);
但它返回null。我不确定为什么?
我猜你是这样放置膀胱Url smth的:
public class YourActivity extends Activity {
private String bladderUrl = getString(R.string.bladder);
@Override
public void onCreate(Bundle savedInstanceState) {
...
但是,您需要这样做:
public class YourActivity extends Activity {
private String bladderUrl;
@Override
public void onCreate(Bundle savedInstanceState) {
bladderUrl = getString(R.string.bladder);
...
首先要弄清楚这一点。您不必将所有字符串都放在strings.xml
. 时期。
Emmanuels 的回答部分正确。onCreate()
初始化上下文时,您必须在方法中获取字符串。他的回答只是部分正确,因为他还提到您必须在 strings.xml 中包含字符串,这是不正确的。
首先,确保这些值在文件 strings.xml 中。
此外,您不能从构造函数访问字符串。应用程序上下文尚未初始化。您应该在 onCreate() 中执行此操作。
伊曼纽尔