代码改变世界

[Android学习笔记]LayoutParams的使用

2014-04-11 17:54  hellenism  阅读(1192)  评论(0编辑  收藏  举报

LayoutParams的使用:

什么时候会用到此对象?
动态布局,动态向ViewGroup中添加子view时,为子view设置此对象,目的是告诉父容器以何种方式呈现此子view

LayoutParams对象用于设置子view在父容器中的布局信息,一般用于设置子view的填充形式,停靠形式

 


 

常用二种构造形式:
1.具体宽高
ViewGroup.LayoutParams(Context c, AttributeSet attrs)

2.LayoutParams枚举
ViewGroup.LayoutParams(int LayoutParamsEnum,int LayoutParamsEnum)

 

不同的布局容器应使用与之相对应的LayoutParams,因为不同的布局容器有自己特殊的属性需要设置
例如:
LinearLayout.LayoutParams
LinearLayout.LayoutParams lp= new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);

FrameLayout.LayoutParams
FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);

RelativeLayout.LayoutParams
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);

 

为子view设置RelativeLayout.LayoutParams

view.setLayoutParams(lp);

 

修改margin

LinearLayout.LayoutParams lp= new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);

lp.setMargins(0, 200, 0, 0);

 

(修改padding:view.setPadding())