繁体   English   中英

以编程方式在View上设置负边距

[英]Set negative margin on View programmatically

我知道如何使用LinearLayout.LayoutParams以及方法setMargins(int, int, int, int)以编程方式设置View边距,但是如何在视图上设置负边距?

访问父布局的布局参数并根据需要进行修改:

 ViewGroup.MarginLayoutParams params =
         (ViewGroup.MarginLayoutParams)view.getLayoutParams();
 params.topMargin = ...; // etc
 // or
 params.setMargins(...);

修改布局后,调用view.requestLayout()

使用数学似乎对我来说足够了。

 ViewGroup.MarginLayoutParams params =
     (ViewGroup.MarginLayoutParams)view.getLayoutParams();
 params.topMargin = 100 - 200;   // -100

用这个

params.setMargins(0,5-10,0,0);

没有

params.setMargins(0,-5,0,0);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM