gpt4 book ai didi

android - 让 Quantity Strings 获取 Zeros

转载 作者:行者123 更新时间:2023-11-29 01:16:51 29 4
gpt4 key购买 nike

我正在使用数量字符串来显示在我的自定义对话框中的数字选择器中选择的值。
因为我的数字选择器是我想做某项 Activity 的小时和分钟,所以选择的值显示在选择器下方的 TextView 中。

在小时选择器上,当我最初选择 0 时,它会按照 XML 文件 中定义的“”值使用react,但随后,在为小时选择了其他值之后,然后我为小时选择了 0,它将我的选择视为“其他”,而不是“”零”。请指教!

我的res/values/strings.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="hour_picker">
<item quantity="zero">"You want to walk for "</item>
<item quantity="one">"You want to walk for %1$d hour and "</item>
<item quantity="other">"You want to walk for %1$d hours and "</item>
</plurals>
<plurals name="minute_picker">
<item quantity="one"> %1$d minute</item>
<item quantity="other"> %1$d minutes</item>
</plurals>
</resources>

.java文件如下:

  public class SelectDurationDialogFragment extends DialogFragment implements NumberPicker.OnValueChangeListener {

NumberPicker hour_picker,minute_picker;
TextView hour_txt,minute_txt;
...
@Override
public void onValueChange(NumberPicker numberPicker, int i, int i1) {

switch (numberPicker.getId()){
case R.id.numberPicker1:
hour_txt.setText(String.format(getResources().getQuantityString((R.plurals.hour_picker),i1),i1));
break;
case R.id.numberPicker2:
minute_txt.setText(String.format(getResources().getQuantityString((R.plurals.minute_picker),i1),i1));
break;
}
}

最佳答案

来自 http://developer.android.com/guide/topics/resources/string-resource.html#Plurals :

使用哪个字符串的选择完全基于语法需要。在英语中,即使数量为 0,表示零的字符串也会被忽略,因为 0 在语法上与 2 或除 1 以外的任何其他数字(“零本书”、“一本书”、“两本书”和很快)。相反,在韩语中,只会使用另一个字符串。

不要被这样的事实所误导,比如说,两个听起来好像它只能适用于数量 2:一种语言可能要求 2、12、102(等等)都被当作彼此对待,但是与其他数量不同。依靠您的翻译人员了解他们的语言实际上坚持的区别。

关于android - 让 Quantity Strings 获取 Zeros,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38978482/

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