我需要在运行时将新视图添加到现有的verticalLayout{}
中。
如果我使用标准的android组件并通过以下方式添加它们,则它会起作用:layoutName.addView(view)
。但是,当我尝试添加anko视图时,我得到了认可:
E / Android运行时:致命异常:主要 流程:ar.com.testapp,PID:26644 java.lang.IllegalStateException:指定的子代已经有一个父代。您必须先在孩子的父母上调用removeView()。
怎么可能?
val attributeLayout = verticalLayout{
id = attributeLayoutId
}
val typeSpinner = spinner{}
typeSpinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener{
override fun onNothingSelected(parent: AdapterView<*>?) {}
override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) {
attributeLayout.addView(
themedCheckBox(R.style.EditText){
text = it.name
isChecked = true
}
)
}