gpt4 book ai didi

java - 获取 StringArray 项目名称

转载 作者:行者123 更新时间:2023-12-01 14:04:18 25 4
gpt4 key购买 nike

我正在学习有关列表的教程(并创建自定义 ListView ),并且有一个关于检查列表项的值的查询。

getView 方法根据列表项的值检查要显示的图像(使用 equals):

@Override
public View getView(int position, View convertView, ViewGroup parent) {

LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View row = inflater.inflate(R.layout.list_items, parent, false);
String[] items = getResources().getStringArray(R.array.countries);

ImageView iv = (ImageView) row.findViewById(R.id.imageView1);
TextView tv = (TextView) row.findViewById(R.id.textView1);

tv.setText(items[position]);

if(items[position].equals("United States")) {
iv.setImageResource(R.drawable.usa);
} else if(items[position].equals("Brazil")) {
iv.setImageResource(R.drawable.brazil);
} else if(items[position].equals("Russia")) {
iv.setImageResource(R.drawable.russia);
} else if(items[position].equals("Japan")) {
iv.setImageResource(R.drawable.japan);
}

return row;
}

国家.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="countries">
<item name="usa">United States</item>
<item name="brazil">Brazil</item>
<item name="russia">Russia</item>
<item name="japan">Japan</item>
</string-array>
</resources>

我想检查项目的“名称”属性。这可能吗?

当我正在考虑创建countries.xml的特定于语言的副本时,我的问题就出现了,虽然项目名称相同,但文本会有所不同,我认为这会破坏我的代码?

最佳答案

直接写

    <item name="usa">@string/usa</item>
<item name="brazil">@string/brazil</item>
<item name="russia">@string/russia</item>
<item name="japan">@string/japan</item>

您必须创建 4 个字符串,如下所示

    <string name="usa">United States</string>
<string name="brazil">Brazil</string>
<string name="russia">Russia</string>
<string name="japan">Japan</string>

您可以按如下方式进行检查。

if (items[position].equals(context.getResources().getString(R.string.usa))) {
iv.setImageResource(R.drawable.usa);
} else if (items[position].equals(context.getResources().getString(R.string.brazil))) {
iv.setImageResource(R.drawable.brazil);
} else if (items[position].equals(context.getResources().getString(R.string.russia))) {
iv.setImageResource(R.drawable.russia);
} else if (items[position].equals(context.getResources().getString(R.string.japan))) {
iv.setImageResource(R.drawable.japan);
}

关于java - 获取 StringArray 项目名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19049877/

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