变量被声明为var,但编译器正在说val
编译器给我错误
错误:(97,17)Val不能被重新分配
但该变量被声明为var
。
编辑:你可以在我的代码中看到评论。 当我分配rcv = recyclerView和
chkStrictSearch =复选框我在这里得到红色下划线与上面的错误消息工具提示
以下是我的代码:
private var rcv: RecyclerView? = null private var chkStrictSearch: android.widget.CheckBox? = null private fun getMainView(): View{ return with(context){ frameLayout{ lparams(width = matchParent, height = matchParent) //Error is below - val cannot be reassign rcv = recyclerView{ lparams(width = matchParent, height = matchParent) setPadding(0, resources.getDimension(R.dimen.toolbar_height).toInt(), 0, dip(48)) clipToPadding = false } //and here - val cannot be reassign chkStrictSearch = checkBox{ text = "Strict Search" }.lparams(width = wrapContent, height = wrapContent){ marginEnd = dip(24) bottomMargin = dip(50) gravity = Gravity.BOTTOM } } } }
看起来像静态代码分析中的一个错误,或者可能是由增量编译引起的。 尝试重建/清理项目。
或者试试这个:
private fun getMainView(): View { return with(context) { frameLayout { rcv = null } } }
如果编译现在可用,请添加原始代码并重新编译。