gpt4 book ai didi

android - 如何使用带复数的字符串数组?

转载 作者:行者123 更新时间:2023-12-02 05:17:45 25 4
gpt4 key购买 nike

我想使用复数来支持多种语言:

<string-array name="quantityTypes">
<item>@plurals/Package</item>
<item>@plurals/Piece</item>
</string-array>

<plurals name="Package">
<item quantity="one">"Package"</item>
<item quantity="other">"Packages"</item>
</plurals>
<plurals name="Piece">
<item quantity="one">"Piece"</item>
<item quantity="other">"Pieces"</item>
</plurals>

我正在尝试获取字符串数组,但此调用返回一个包含 2 个元素的字符串数组,这两个元素均为 null。

getResources().getStringArray(R.array.quantityTypes)

有什么我想念的吗?字符串数组甚至支持复数吗?

最佳答案

对我来说,getResources().getStringArray(R.array.quantityTypes) 也返回一个空值数组。看来安卓还是不支持。

但我发现了一个看起来更好的解决方法(无需检查数组边界):

//字符串.xml

<plurals name="Season">
<item quantity="one">"Season"</item>
<item quantity="other">"Seasons"</item>
</plurals>
<plurals name="Volume">
<item quantity="one">"Volume"</item>
<item quantity="other">"Volumes"</item>
</plurals>
<plurals name="Collection">
<item quantity="one">"Collection"</item>
<item quantity="other">"Collections"</item>
</plurals>
<plurals name="Special">
<item quantity="one">"Special"</item>
<item quantity="other">"Specials"</item>
</plurals>
<plurals name="Set">
<item quantity="one">"Set"</item>
<item quantity="other">"Sets"</item>
</plurals>

//显示类型.java

public enum ShowTypes {
SEASON("Season", R.plurals.Season),
VOLUME("Volume", R.plurals.Volume),
COLLECTION("Collection", R.plurals.Collection),
SPECIAL("Special", R.plurals.Special),
SET("Set", R.plurals.Set)

private String typeValue;
private int resId;

private ShowTypes(String typeValue, int resId) {
this.typeValue = typeValue;
this.resId = resId;
}

public static ShowTypes getType(String typeValue) {
ShowTypes result = SEASON;
for (ShowTypes type : ShowTypes.values()) {
if (type.typeValue.equals(typeValue)) {
return type;
}
}
return result;
}

public String getResourceString(Resources res, int quantity) {
return res.getQuantityString(resId, quantity);
}
}

关于android - 如何使用带复数的字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23773659/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com