激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Android - Android動態(tài)布局小結(jié)

Android動態(tài)布局小結(jié)

2021-05-08 16:59bluejww Android

android動態(tài)布局相比靜態(tài)布局,動態(tài)布局不用再將xml轉(zhuǎn)變了布局代碼,提高了一定的效率,本篇文章給大家介紹android動態(tài)布局小結(jié),對android動態(tài)布局相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧

android動態(tài)布局相比靜態(tài)布局,動態(tài)布局不用再將xml轉(zhuǎn)變了布局代碼,提高了一定的效率,當(dāng)然可以忽略不記。動態(tài)布局主要是比較靈活,可以很快的在代碼中直接修改布局,并直接使用控件進行業(yè)務(wù)邏輯開發(fā)。但代碼量通常比較大,維護沒有靜態(tài)布局方便。不過,作為一個android開發(fā)人員,掌握一定的動態(tài)布局技巧,有時在工作中也是可以提高一定的代碼開發(fā)效率。

在動態(tài)布局中,要想實現(xiàn)一個布局,一般是先創(chuàng)建五大布局的對象。然后對這些對象進行屬性設(shè)置,之后再向里面添加子布局或控件。

    以RelativeLayout為例。

?
1
2
3
4
5
6
7
8
9
10
11
12
RelativeLayout mLayout = new RelativeLayout();
   //設(shè)置RelativeLayout的子控件屬性對象,并設(shè)置其尺寸樣式。每個GroupView中都有一個LayoutPrams,都是用來給子控件設(shè)置發(fā)生的。
 
 
   RelativeLayout.LayoutPrams params = new RelativeLayout.LayoutPrams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
   //增加 子控件
   ImageView iv = new ImageView(getActivity());
   iv.setImageResource(R.drawable.tab_icon_conversation_normal);
   //設(shè)置子控件在RealtiveLayout中的位置屬性。
   params.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE); //給iv 增加屬性
    //將iv,增加到mLayout中
   mLayout .addView(iv, params);

從最后一句,可以看出來,params對象引用設(shè)置的屬性都是作用有ImageView這個子控件上的,然后把iv與params一塊加入到RealtiveLayout中去。

整理android動態(tài)布局方法總結(jié)

//絕對布局

?
1
2
3
4
5
6
7
8
9
10
11
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);

//相對布局

?
1
2
3
4
5
6
7
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);

//線性布局

?
1
2
3
4
5
LinearLayout ll = new LinearLayout(this);
EditText et = new EditText();
ll.addView(et);
//動態(tài)添加布局的方法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的 根節(jié)點下
//動態(tài)添加布局的方法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);

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 草久视频在线观看 | 91网站永久免费看 | 在线播放视频一区二区 | 天天好比网 | 奶子吧naiziba.cc免费午夜片在线观看 | 久久精品一二三区白丝高潮 | 国产九九热| 撅高 自己扒开 调教 | 欧美一级精品 | 亚洲福利在线视频 | 国产一级一片免费播放 | 亚洲成人在线视频网 | 中文字幕综合在线观看 | 色综合久久久久久久久久久 | www成人在线观看 | aa国产视频一区二区 | 国产一区二区在线免费播放 | 欧美一级黄色录像片 | 91成人在线网站 | 国产一级www | 一级成人毛片 | 欧美日韩亚州综合 | 成年人观看免费视频 | 国产伦精品一区二区三区 | 亚洲va久久久噜噜噜久久男同 | 国产免费一区二区三区在线能观看 | 久久靖品 | 99精品视频一区二区三区 | 爱唯侦察 国产合集 亚洲 | 久久国产一级片 | 日本大片在线播放 | 婷婷一区二区三区四区 | 成人毛片免费在线 | 九一传媒在线观看 | 成年人视频免费 | 成人国产精品一区二区毛片在线 | 九九热在线视频免费观看 | 国产亚洲精品综合一区 | 一区二区三区黄色 | 国产色视频免费 | 亚洲国产精品久久久久久久久 |