LinearLayout.LayoutParams动态设置子控件属性

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 15:46   111   0
LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,也就是将一个认可的layoutParams传递进去。
可以这样去形容LayoutParams,在象棋的棋盘上,每个棋子都占据一个位置,也就是每个棋子都有一个位置的信息,如这个棋子在4行4列,这里的“4行4列”就是棋子的LayoutParams。
但LayoutParams类也只是简单的描述了宽高,宽和高都可以设置成三种值:
1,一个确定的值;
2,FILL_PARENT,即填满(和父容器一样大小);

3,WRAP_CONTENT,即包裹住组件就好。

Java代码 :
  1. //创建一个线性布局
  2. private LinearLayout mLayout;
  3. mLayout = (LinearLayout) findViewById(R.id.layout);
  4. //现在我要往mLayout里边添加一个TextView
  5. //你可能会想直接在布局文件里边配置不就O 了 那是 但是这里为了说明问题我们用代码实现
  6. TextView textView = new TextView(Activity01.this);
  7. textView.setText("Text View " );
  8. //这里请不要困惑这里是设置 这个textView的布局 FILL_PARENT WRAP_CONTENT 和在xml文件里边设置是一样的如
  9. //在xml里边怎么配置高宽大家都会的。
  10. //第一个参数为宽的设置,第二个参数为高的设置。
  11. LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(
  12. LinearLayout.LayoutParams.FILL_PARENT,
  13. LinearLayout.LayoutParams.WRAP_CONTENT
  14. );
  15. //调用addView()方法增加一个TextView到线性布局中
  16. mLayout.addView(textView, p);
  17. //比较简单的一个例子


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP