Android中layoutParams

   开始老师教了我们的,但是后来竟然不知道了,才知道自己的复习工作没做到位!现在就复习了一下,也就进上了!希望能给读者带来一点明白!

       解释:这个LayoutParams其实就是一个行为的执行者

通过查看他的API会看到他继承的是 JAVA.Lang.Object and  the  Android.view.viewgroup.layoutparams

  

  layoutparams主要适用于手写(自定义)布局中。(就不用再去.xml布局文件中去写布局了)也就是一个内部类。

具体代码:

//先在Activity中的oncreate方法中创建一个linearlayout对象(创建一个线性布局)

//this表示当前的Activity

  LinearLayout mLayout=new  LinearLayout(this);

//然后我们就new一个layoutparams出来,相当于new一个容器

  LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(LayoutParam.FILL_PARENT,LayoutParams.WRAP_CONTENT);

//将params加载到layout里面去

mLayout.setLayoutParams(params);

 //这里还可以设置一下控件的方向

  mLayout.seetorientation(LinearLayout.VERTICAL);

  //实例化TextView文本显示控件

  TextView mTextView=new TextView(this);

     mTextView.setText("Hello!this is layoutparams!");

  mTextView.setTextColor(color.RED);

  mLayout.add(mTextView);

//最后一步:加载进去

  setContentView(layout);

//it's over

不知大家看懂没?


LayoutParams继承于Android.View.ViewGroup.LayoutParams.
LayoutParams相当于一个Layout的信息包(为layout的具体布局做了一个有界限的规划),它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,然后,将具体的布局方式写在layoutparams中,再将一个认可的layoutParams传递进去。
可以这样去形容LayoutParams,在象棋的棋盘上(Linearlayout),每个棋子(textView)都占据一个位置,也就是每个棋子(textView)都有一个位置的具体信息,eg:一个棋盘要布局6行4列,这里的“6行4列”就要靠棋盘(linearLayout)的LayoutParams去布局棋子(TextView)的行列。
1,一个确定的值;
2,FILL_PARENT,即填满他所依据的比他大一个命令的父容器
3,WRAP_CONTENT,即刚好组件大小。


一切只是为了充实自己!!stay hungry and stay foolish!!
原文地址:https://www.cnblogs.com/Catherine-Brain/p/Catherine_Brain.html