189 8069 5689

android动态布局,安卓动态布局

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

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

成都创新互联是一家集网站建设,矿区企业网站建设,矿区品牌网站建设,网站定制,矿区网站建设报价,网络营销,网络优化,矿区网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

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 动态布局与静态布局的优缺点?

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

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 如何实现动态添加布局

如下代码:

LinearLayout layout = new LinearLayout(this);

TextView tx = new TextView(this);

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

layout.addView(tx);

setContentView(layout);

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


网站栏目:android动态布局,安卓动态布局
分享网址:http://cdxtjz.cn/article/dsdgoeg.html

其他资讯