ConstraintLayoutのFlowにViewを動的に追加する
追加するViewに View.generateViewId()
等でIDの設定と、ConstraintLayout.LayoutParams
を設定する。
val subBinding = ViewSubBinding.inflate(layoutInflater)
subBinding.root.id = View.generateViewId()
subBinding.root.layoutParams = ConstraintLayout.LayoutParams(
ConstraintLayout.LayoutParams.WRAP_CONTENT,
ConstraintLayout.LayoutParams.WRAP_CONTENT
)
最後に追加先のViewとFlowに先ほどのViewを追加して終わりです。
val mainBinding = ViewMainBinding.inflate(layoutInflater)
mainBinding.addView(subBinding.root)
mainBinding.flow.addView(subBinding.root)