Arn*_*rty 93 android android-layout android-view
如何从活动中获取视图的边距值?视图可以是任何类型.
经过一些搜索后,我找到了获取视图填充的方法,但在边距上找不到任何内容.有人可以帮忙吗?
我试过这样的事,
ViewGroup.LayoutParams vlp = view.getLayoutParams();
int marginBottom = ((LinearLayout.LayoutParams) vlp).bottomMargin;
Run Code Online (Sandbox Code Playgroud)
这是有效的,但在上面的代码中我假设视图是一个LinearLayout.但margin即使我不知道视图类型,我也需要获取属性.
Vla*_*mir 173
试试这个:
View view = findViewById(...) //or however you need it
LayoutParams lp = (LayoutParams) view.getLayoutParams();
Run Code Online (Sandbox Code Playgroud)
利润可以通过
lp.leftMargin;
lp.rightMargin;
lp.topMargin;
lp.bottomMargin;
Run Code Online (Sandbox Code Playgroud)
编辑:
也许ViewGroup.MarginLayoutParams会对你有用.它是其他的基类LayoutParams.
ViewGroup.MarginLayoutParams lp = (ViewGroup.MarginLayoutParams) view.getLayoutParams();
Run Code Online (Sandbox Code Playgroud)
http://developer.android.com/reference/android/view/ViewGroup.MarginLayoutParams.html
Fre*_*oid 30
尝试
ViewGroup.MarginLayoutParams vlp = (MarginLayoutParams) view.getLayoutParams()
vlp.rightMargin
vlp.bottomMargin
vlp.leftMargin
vlp.topMargin
Run Code Online (Sandbox Code Playgroud)
这至少为我的观点返回了正确的边距.
http://developer.android.com/reference/android/view/ViewGroup.MarginLayoutParams.html
现在使用这个编辑过的代码。这会帮助你
FrameLayout.LayoutParams lp=(FrameLayout.LayoutParams)mainLayout.getLayoutParams();
lp.leftMargin // for left margin
lp.rightMargin // for right margin
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
56387 次 |
| 最近记录: |