LayoutParams继承于Android.View.ViewGroup.LayoutParams.用于定义控件在布局中显示的位置大小(即控制占用的空间)
在xml中定义一个TextView,一般会如下定义:
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Text View"/>
这里定义的fill_parent和wrap_content分别表示填满空间和自适应大小。那么如何在java代码中直接实现呢?这里就需要用到LayoutParams了:
//创建一个线性布局
private LinearLayout mLayout;
mLayout = (LinearLayout) findViewById(R.id.layout);
//现在我要往mLayout里边添加一个TextView
TextView textView = new TextView(Activity01.this);
textView.setText("Text View " );
//第一个参数为宽的设置,第二个参数为高的设置。
LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT
);
//调用addView()方法增加一个TextView到线性布局中
mLayout.addView(textView, p);
Layout.LayoutParams.FILL_PARENT就是和xml中的fill_parent起到同样的作用。同时,这里可以直接使用数字进行长宽设定,这个长宽设定就是精确到像素点得绝对长度设定。比如:
LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(75, 75);