【发布时间】:2021-01-23 21:42:44
【问题描述】:
我有 2 个arrays,我得到一个string-array 和一个integer-array,如下所示:
val country= resources.getStringArray(R.array.country_array)
val flags = resources.getIntArray(R.array.country_flag_array)
在我的strings.xml 中如下:
<string-array name="country_array">
<item>USA</item>
<item>France</item>
<item>Canada</item>
</string-array>
<integer-array name="country_flag_array">
<item>@drawable/flag_united_states_of_america</item>
<item>@drawable/flag_france</item>
<item>@drawable/flag_canada</item>
</integer-array>
我有一个data class 如下添加国家标志和它的名称来填充recyclerView。
data class CountryObject(val flagImage : Int, val country: String)
我有这个函数可以用国旗和国家/地区填充list:
private fun addCountriesToList(country: Array<String>, flgs : IntArray) : List<CountryObject>{
val listCountry= ArrayList<CountryObject>()
for(c in country){
for (f in flgs){
listCountry.add(CountryObject(f, c))
}
}
return listCountry
}
编辑:附加代码:
这是我保存 addCountriesToList 函数的地方
val listCountry : List<CountryObject> = addCountriesToList(country, flags)
我有另一个填充回收站视图的函数(我知道这是可行的)
setupLanguageList(rv_country, listCountry , 0)
我可以用国家/地区名称填充recyclerView,但是每个国家/地区名称都填充了数组的大小并且图像不显示。因此,由于有 3 个国家/地区,每个国家/地区都有 3 次人口。
任何帮助或建议都将受到高度赞赏,以了解为什么这些语言显示为这样,而不是图像。
【问题讨论】:
标签: android kotlin arraylist android-recyclerview