动态布局android,动态布局 css

android中动态布局有什么作用

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

专注于为中小企业提供做网站、成都做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业萧县免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

android RelativeLayout代码中动态设置相对布局里控件的位置

设置imageButtonCursor在底部(因为之前此控件是依附A控件来设定位置的,根据需求A控件要隐藏掉,当A控件隐藏的时候,imageButtonCursor会跑位,所以要这样动态设置)

这里要说名的是 imageButtonCursor的父布局是RelativeLayout 否则getLayoutParams强转会报错的

R.id.horizontalScrollView1为A控件(根据需求此时A控件要显示)显示出来后

imageButtonCursor有要根据A控件去找位置 因为之前设置imageButtonCursor显示在底部 如果不清除这个位置则 设置的相对位置则是无效的 17以上可以用removeRule的方法 为了兼容只能用

android 如何实现动态添加布局

如下代码:

LinearLayout layout = new LinearLayout(this);

TextView tx = new TextView(this);

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

layout.addView(tx);

setContentView(layout);

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

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 动态设置布局宽度

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

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

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,动态布局 css
文章出自:http://scyanting.com/article/dseddjj.html