Как программно поменять параметр android:layout_height="" у ConstraintLayout?
Есть ConstraintLayout с параметром android:layout_height="550"
Мне нужно, чтобы при нажатии кнопки, значение параметра менялось на 450.
Однако все, что я нашел по этому поводу в документации, это ConstraintLayout.setMaxHeigth(); и ConstraintLayout.setMinHeigth();, но при изменении этих параметров, у меня верхнюю и нижнюю части макета становится не видно.
Ответы (1 шт):
Автор решения: Sergei Buvaka
→ Ссылка
Думаю это должно помочь
ConstraintLayout layout = findViewById(R.id.you_layout);
// Получение LayoutParams которые позволят нам изменить размеры нашего layout
LayoutParams params = layout.getLayoutParams();
// Изменение высоты или ширины в пикселях
params.height = 100;
params.width = 100;
layout.setLayoutParams(params);
Если вы хотите конвертировать dp в пиксели используйте этот метод
int height = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, <HEIGHT>, getResources().getDisplayMetrics());