如何将XML中的字符串数组和整数数组添加到一个集合中



嘿,伙计们,我想在Recycler View 中创建这样的东西

示例步骤

我已经有一个名为HomeStep的类

data class HomeStep(
val icon: Int,
val circle: Int,
val textName: String)

我已经在string.xml中存储了图标(绿色一(和圆圈作为整数数组

<integer-array name="icon_drawble">
<item>@drawable/icon_1</item>
<item>@drawable/icon_2</item>
<item>@drawable/icon_3</item>
<item>@drawable/icon_4</item>
</integer-array>
<integer-array name="circle_drawble">
<item>@drawable/circle_1</item>
<item>@drawable/circle_2</item>
<item>@drawable/circle_3</item>
<item>@drawable/circle_4</item>
</integer-array>

我已经在string.xml和中存储了图标和圆圈作为字符串数组

<string-array name="list_step">
<item>@string/step_1_text</item>
<item>@string/step_2_text</item>
<item>@string/step_3_text</item>
<item>@string/step_4_text</item>
</string-array>

是否可以在Collection中添加我的Integer数组和字符串数组?

val listHomeStep = ArrayList<HomeStep>()
val layoutManager = LinearLayoutManager(context, RecyclerView.VERTICAL, false)
val adapter = HomeStepAdapter()
var icon: Int
var circle: Int
var textName: String
var i = 0
while (i < listHomeStep.size) {
icon = resources.getIntArray(R.array.icon_drawble)[i]
circle = resources.getIntArray(R.array.circle_drawable)[i]
textName = resources.getStringArray(R.array.list_step)[i]
i++
}
listHomeStep.addAll(icon, circle, textName)
adapter.setDataList(listHomeStep)

答案是肯定的,您可以将Integer数组或String数组添加到Collection

在您的情况下,您应该一个接一个地插入HomeStep,就像这个一样

val listHomeStep = ArrayList<HomeStep>()
val layoutManager = LinearLayoutManager(context, RecyclerView.VERTICAL, false)
val adapter = HomeStepAdapter()
var icon: Int
var circle: Int
var textName: String
var i = 0
while (i < listHomeStep.size) {
icon = resources.getIntArray(R.array.icon_drawble)[i]
circle = resources.getIntArray(R.array.circle_drawable)[i]
textName = resources.getStringArray(R.array.list_step)[i]
val homeStep = HomeStep(icon, circle, textName)
listHomeStep.add(homeStep)
i++
}
adapter.setDataList(listHomeStep)

最新更新