我知道如何使用LinearLayout.LayoutParams
和方法setMargins(int, int, int, int)
以编程方式设置View
的边距,但是如何在视图上放置负边距呢?
我知道如何使用LinearLayout.LayoutParams
和方法setMargins(int, int, int, int)
以编程方式设置View
的边距,但是如何在视图上放置负边距呢?
访问父级布局的布局参数,并按您的喜好修改它们:
ViewGroup.MarginLayoutParams params =
(ViewGroup.MarginLayoutParams)view.getLayoutParams();
params.topMargin = ...; // etc
// or
params.setMargins(...);
在修改布局后,调用view.requestLayout()
。
。
params.setMargins(0,5-10,0,0);
没有
params.setMargins(0,-5,0,0);
对我来说,使用数学似乎足够欺骗它了。
ViewGroup.MarginLayoutParams params =
(ViewGroup.MarginLayoutParams)view.getLayoutParams();
params.topMargin = 100 - 200; // -100
val param = (cardSearch.layoutParams as ConstraintLayout.LayoutParams) param.topMargin = (-searchHeight/2) - listTotalScrollY cardSearch.requestLayout()
- zihadrizkyef