android动态布局相比静态布局,动态布局不用再将xml转变了布局代码,提升了必定的效率,固然能够忽略不记。动态布局主要是比较灵活,能够很快的在代码中直接修改布局,并直接使用控件进行业务逻辑开发。但代码量一般比较大,维护没有静态布局方便。不过,做为一个android开发人员,掌握必定的动态布局技巧,有时在工做中也是能够提升必定的代码开发效率。android
在动态布局中,要想实现一个布局,通常是先建立五大布局的对象。而后对这些对象进行属性设置,以后再向里面添加子布局或控件。布局
以RelativeLayout为例。orm
RelativeLayout mLayout = new RelativeLayout();xml
//设置RelativeLayout的子控件属性对象,并设置其尺寸样式。每一个GroupView中都有一个LayoutPrams,都是用来给子控件设置发生的。对象
RelativeLayout.LayoutPrams params = new RelativeLayout.LayoutPrams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);开发
//增长 子控件get
ImageView iv = new ImageView(getActivity());it
iv.setImageResource(R.drawable.tab_icon_conversation_normal);io
//设置子控件在RealtiveLayout中的位置属性。效率
params.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE); //给iv 增长属性
//将iv,增长到mLayout中
mLayout .addView(iv, params);
从最后一句,能够看出来,params对象引用设置的属性都是做用有ImageView这个子控件上的,而后把iv与params一块加入到RealtiveLayout中去。