I need to change margin of toolbar, which was made of ConstraintLayout, in different cases. I tried to do it in following way
ConstraintLayout.LayoutParams newLayoutParams = new ConstraintLayout.LayoutParams(ConstraintLayout.LayoutParams.MATCH_PARENT, ConstraintLayout.LayoutParams.WRAP_CONTENT); ConstraintLayout.MarginLayoutParams layoutParams = new ConstraintLayout.MarginLayoutParams(newLayoutParams); layoutParams.setMargins(0, 0, 0, 0); toolbar.setLayoutParams(newLayoutParams);   but in second case                 layoutParams.setMargins(16, 16, 16, 16);  it did not change. So, can someone give other way or point to the mistake. Thanks for spending time to my problem.
I tried to use                 newLayoutParams.setMargins(54, 54, 54, 0); this puts margin to left and right, but I still need to put margin on top of it.
Finally with help of @Aksh I found my mistake and solve my problem. If someone find it useful, I will put my code bellow
     ConstraintLayout.LayoutParams newLayoutParams = (ConstraintLayout.LayoutParams) toolbar.getLayoutParams();      newLayoutParams.topMargin = 0;      newLayoutParams.leftMargin = 0;      newLayoutParams.rightMargin = 0;      toolbar.setLayoutParams(newLayoutParams); 
                        good way to add margin to a view in constraintlayout
val constraintSet = ConstraintSet() constraintSet.clone(constraintLayoutId) val marginTop = context.getDimension(10f) constraintSet.setMargin(R.id.tv_user, ConstraintSet.TOP, marginTop) constraintSet.applyTo(constraintLayoutId)  fun Context.getDimension(value: Float): Int {     return TypedValue.applyDimension(     TypedValue.COMPLEX_UNIT_DIP, value, this.resources.displayMetrics).toInt() } 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With