android动态布局,android动态布局文件

android 如何动态布局自定义view,不用XML.

可以直接new View来得到View对象来实现代码布局。以下为示例代码:

成都创新互联公司主营太仆寺网站建设的网络公司,主营网站建设方案,重庆App定制开发,太仆寺h5小程序制作搭建,太仆寺网站营销推广欢迎太仆寺等地区企业咨询

1.绝对布局

AbsoluteLayout abslayout=new AbsoluteLayout (this);

setContentView(abslayout);

Button btn1 = new Button(this);

btn1.setText(”this is a button”);

btn1.setId(1);

AbsoluteLayout.LayoutParams lp1 =

new AbsoluteLayout.LayoutParams(

ViewGroup.LayoutParams.WRAP_CONTENT,

ViewGroup.LayoutParams.WRAP_CONTENT,

0,100);

abslayout.addView(btn1, lp1);

2.相对布局

RelativeLayout relativeLayout = new RelativeLayout(this);

setContentView(relativeLayout);

AbsoluteLayout abslayout=new AbsoluteLayout (this);

RelativeLayout.LayoutParams lp1 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);

lp1.addRule(RelativeLayout.ALIGN_PARENT_TOP);

lp1.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);

relativeLayout.addView(abslayout ,lp1);

3.线性布局

LinearLayout ll = new LinearLayout(this);

EditText et = new EditText();

ll.addView(et);

//动态添加布局的方法1. LinearLayout ll = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main1,null); setContentView(ll); LinearLayout ll2 = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main2,ll); //这样 main2 作为 main1的子布局 加到了 main1的 根节点下

//动态添加布局的方法2 addView. LinearLayout ll = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main1,null); setContentView(ll); LinearLayout ll2 = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main2,null); ll.addView(ll2);

android 动态设置布局宽度

例如设置一个图片宽高 关键代码:

//取控件当前的布局参数

LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) imageView.getLayoutParams();

//设置宽度值

params.width = dip2px(MainActivity.this, width);

//设置高度值

params.height = dip2px(MainActivity.this, height);

//使设置好的布局参数应用到控件

imageView.setLayoutParams(params);

1

2

3

4

5

6

7

8

1

2

3

4

5

6

7

8

高度除了可以设置成以上固定的值,也可以设置成wrap_content或match_content

ViewGroup.LayoutParams.WRAP_CONTENT

ViewGroup.LayoutParams.MATCH_PARENT

1

2

1

2

在这里插入图片描述

xml

android 动态布局与静态布局的优缺点?

动态布局,也就是可以根据业务的需求改变界面。实际上就是用代码写出界面,代码量比较大。而且维护起来十分的繁琐。特别是一些界面空间比较多的时候。静态的布局,是通过xml来实现的,适用于页面比较固定的情况。但是维护起来比较方便。

android 如何实现动态添加布局

如下代码:

LinearLayout layout = new LinearLayout(this);

TextView tx = new TextView(this);

tx.setText('我是动态添加的');

layout.addView(tx);

setContentView(layout);

这就动态添加了一个线性布局,并且在布局里面加了一个textview


当前标题:android动态布局,android动态布局文件
转载来源:http://scjbc.cn/article/dscpheh.html

其他资讯