Java 如何在Android中为xml中的字符串资源指定空值?

Java 如何在Android中为xml中的字符串资源指定空值?,java,android,xml,Java,Android,Xml,在my values.xml中,我有一些字符串资源。但有时,出于特定原因,我希望该字符串资源具有空值 如何指定该字符串具有null值 values.xml: <string name="default_item_0">Some String</string> <string name="default_item_1">@null</string> String item0 = context.getString(R.string.default_

在my values.xml中,我有一些字符串资源。但有时,出于特定原因,我希望该字符串资源具有空值

如何指定该字符串具有
null

values.xml:

<string name="default_item_0">Some String</string>
<string name="default_item_1">@null</string>
String item0 = context.getString(R.string.default_item_0);
String item1 = context.getString(R.string.default_item_1);
String item0 = "Some String";
String item1 = null;
String item0 = "Some String";
String item1 = "@0";
期望值:

<string name="default_item_0">Some String</string>
<string name="default_item_1">@null</string>
String item0 = context.getString(R.string.default_item_0);
String item1 = context.getString(R.string.default_item_1);
String item0 = "Some String";
String item1 = null;
String item0 = "Some String";
String item1 = "@0";
实际值:

<string name="default_item_0">Some String</string>
<string name="default_item_1">@null</string>
String item0 = context.getString(R.string.default_item_0);
String item1 = context.getString(R.string.default_item_1);
String item0 = "Some String";
String item1 = null;
String item0 = "Some String";
String item1 = "@0";
我尝试了@null值,但它返回了一个字符串
@0


xml中是否可能有
null
值?

您可以尝试使用
匹配项

测试此字符串是否与给定的正则表达式匹配。这 方法仅当正则表达式与整个 输入字符串

如果需要使用String.format(String, 对象…,然后可以通过将格式参数放入 字符串资源


礼貌

您可以使用此方法

 public static boolean isNullString(String string) {
    try {
        if (string.trim().equalsIgnoreCase("null") || string.trim() == null || string.trim().length() < 0 || string.trim().equals("")) {
            return true;
        } else {
            return false;
        }
    } catch (Exception e) {
        return true;
    }
}

正如您所知,资源之所以存在,是因为它们应该是“非空的东西”,而
@null
只是一个具有零值id的参考资源

xml中是否可能有空值

字符串资源的空值?不,老实说,这似乎不合理

但在这种情况下,由于您的具体原因,我建议您在参考资料中添加一个空字符串:

<string name="empty"/>
p.S:
早些时候,我使用这种方法将索引映射到数组的正确项,正如你猜的那样,在我的例子中,一些索引被跳过了,因此我也不得不跳过一些数组项。

但是为什么?-------------------科学版的RandykaYudhistira!(研究目的!)=@PolyBug非常有趣的问题:)抱歉,尽管我对此没有任何答案:|我也会期待解决方案:)你可以使用@IntelliJAmiya idea。或者您可以将资源设置为%s,然后设置String.format(您的\u资源,null)@不幸的是,没有可用的解决方案。从技术上讲,XML没有<代码> @ null 的值。我认为这是一种解决方案。我必须记住,从逻辑上讲,一个特定的字符串资源是否可以有空值,这将是一个麻烦。我希望有一种通过xml直接分配空值的方法。@PolyBug确实如此。你有其他的解决方案吗?到目前为止没有。android中没有定义任何空值的常量R定义。