Android Kotlin中的动态视图数组

Android Kotlin中的动态视图数组,android,kotlin,android-view,Android,Kotlin,Android View,我试图通过创建TextView数组来创建动态TextView,但出现错误: java.lang.ArrayIndexOutOfBoundsException: length=0; index=0 我的代码: var txtViews=arrayOfNulls(3) 对于(txtViews.index中的i){ txtViews=阵列fnulls(i) txtViews[i]?.textSize=24.0F txtViews[i]?.text=“您好” txtViews[i]?.setTextC

我试图通过创建
TextView
数组来创建动态
TextView
,但出现错误:

java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
我的代码:

var txtViews=arrayOfNulls(3)
对于(txtViews.index中的i){
txtViews=阵列fnulls(i)
txtViews[i]?.textSize=24.0F
txtViews[i]?.text=“您好”
txtViews[i]?.setTextColor(ContextCompat.getColor)(此,
R.color.colorAccent)
layout.addView(txtViews[i])
}

您从未初始化数组中的空引用:

这应该对您试图实现的目标起作用:

val txtViews = arrayOfNulls<TextView>(3)
        for (i in txtViews.indices) {
            txtViews[i] = TextView(context).apply {
                textSize = 24.0F
                text = "Hello"
                setTextColor(
                    ContextCompat.getColor(context,
                        R.color.colorAccent))
            }
            layout.addView(txtViews[i])
        }
val txtViews=arrayOfNulls(3)
对于(txtViews.index中的i){
txtViews[i]=TextView(上下文)。应用{
textSize=24.0F
text=“你好”
setTextColor(
ContextCompat.getColor(上下文,
R.color.colorAccent)
}
layout.addView(txtViews[i])
}
无需创建阵列fnull

我是这样做的:

for (i in size) {
        val txtView = TextView(this).apply {
            textSize = 24.0F
            text = Html.fromHtml("&#8226")
            setTextColor(
                ContextCompat.getColor(
                    context,
                    R.color.colorAccent
                )
            )
        }

        layout.addView(txtView)
    }
for (i in size) {
        val txtView = TextView(this).apply {
            textSize = 24.0F
            text = Html.fromHtml("&#8226")
            setTextColor(
                ContextCompat.getColor(
                    context,
                    R.color.colorAccent
                )
            )
        }

        layout.addView(txtView)
    }