Al agregar un LinearLayout a ConstraintLayout, desaparecen los TextViews.
Creé un archivo xml de plantilla LinearLayout, que tiene una ImageView y 2 TextViews, y estoy intentando agregarlo a mi ConstraintLayout programáticamente. Si lo agrego a un LinearLayout:
val layout: LinearLayout = root.findViewById(R.id.linearLayoutBlockSequence)
val inflater = LayoutInflater.from(context)
val linearLayout = inflater.inflate(R.layout.linearlayout_block, null, false) as LinearLayout
linearLayout.id = View.generateViewId()
layout.addView(linearLayout)
Funciona bien:
Pero cuando lo agrego a mi ConstraintLayout:
val constraintLayout: ConstraintLayout = root.findViewById(R.id.constraintLayoutBlockSequence)
val inflater = LayoutInflater.from(context)
val linearLayout = inflater.inflate(R.layout.linearlayout_block, null, false) as LinearLayout
linearLayout.id = View.generateViewId()
constraintLayout.addView(linearLayout)
val constraintSet = ConstraintSet()
constraintSet.clone(constraintLayout)
constraintSet.connect(linearLayout.id, ConstraintSet.TOP, R.id.linearLayoutBlockSequence, ConstraintSet.BOTTOM, 0)
constraintSet.connect(linearLayout.id, ConstraintSet.END, R.id.constraintLayoutBlockSequence, ConstraintSet.END, 0)
constraintSet.connect(linearLayout.id, ConstraintSet.START, R.id.constraintLayoutBlockSequence, ConstraintSet.START, 0)
constraintSet.applyTo(constraintLayout)
Los TextViews ya no están allí:
¿Qué estoy haciendo mal?
davy.ai
El problema podría ser que los
TextViews
están siendo restringidos fuera del área visible delConstraintLayout
. Verifique si losTextViews
están recibiendo restricciones correctas, comotopToBottomOf
ystartToEndOf
, o si se están restringiendo accidentalmente fuera de los límites del diseño. Además, asegúrese de que los atributoslayout_width
ylayout_height
de losTextViews
estén configurados correctamente. También podría ser útil verificar si hay restricciones conflictivas en elConstraintLayout
, especialmente con elLinearLayout
que se agregó programáticamente.