成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

布局Layouts之LinearLayout線性布局

從Hello world!開始,我們一直都是在一種布局下學(xué)習(xí)的,當(dāng)然,對于基礎(chǔ)內(nèi)容的學(xué)習(xí),還是沒有任何問題的!但——

創(chuàng)新互聯(lián)公司于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元師宗做網(wǎng)站,已為上家服務(wù),為師宗各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108

 在Android開發(fā)中UI設(shè)計(jì)也是十分重要的,當(dāng)用戶使用一個(gè)App時(shí),最先感受到的不是這款軟件的功能是否強(qiáng)大,而是界面設(shè)計(jì)是否賞心悅目,用戶體驗(yàn)是否良好。也可以這樣說,有一個(gè)好的界面設(shè)計(jì)去吸引用戶的使用,才能讓更多的用戶體驗(yàn)到軟件功能的強(qiáng)大。

 那么,Android中幾種常用布局則顯得至關(guān)重要。各個(gè)布局既可以單獨(dú)使用,也可以嵌套使用,我們應(yīng)該在實(shí)際應(yīng)用中應(yīng)靈活變通。

第2章、LinearLayout線性布局

 LinearLayout是一種線型的布局方式。LinearLayout布局容器內(nèi)的組件一個(gè)挨著一個(gè)地排列起來:不僅可以控制個(gè)組件橫向排列,也可控制各組件縱向排列。通過orientation屬性設(shè)置線性排列的方向是垂直(vertical)還是縱向(horizontal)。 

我們下面通過XML布局和Java代碼布局兩種方式分別舉例:

一、XML方式布局

1、創(chuàng)建一個(gè)空白Activity

布局Layouts之LinearLayout線性布局

2、打開“res/layout/activity_main.xml”文件,修改成以下代碼。

布局Layouts之LinearLayout線性布局

(1)第①部分

<?xml version="1.0" encoding="utf-8">,每個(gè)XML文檔都由XML序言開始,在前面的代碼中的第一行便是XML序言,<?xml version="1.0">。這行代碼表示按照1.0版本的XML規(guī)則進(jìn)行解析。encoding = "utf-8"表示此xml文件采用utf-8的編碼格式。編碼格式也可以是GB2312。

如果你對此不太明白,請參閱相關(guān)XML文檔。

(2)第②部分

<LinearLayout…… 表示采用線型布局管理器。

(3)第③部分

android:layout_width="match_parent"    android:layout_height="match_parent"表示布局管理器寬度和高充將填充整個(gè)屏幕寬度和高度。

(4)第④部分

android:orientation="vertical"表示布局管理器內(nèi)組件采用垂直方向排列。

如果要采用水平方向請使用:horizontal。

3、插入三個(gè)按鈕。

布局Layouts之LinearLayout線性布局

4、打開“res/layout/activity_main.xml”文件,修改成以下代碼。

布局Layouts之LinearLayout線性布局

將3個(gè)按鈕的android:layout_width的屬性設(shè)為:"match_parent"。

該屬性可以有三個(gè)值:wrap_content、match_parent、fill_parent。

wrap_content表示寬度匹配內(nèi)容,簡單地說就是文字有多長按鈕就多長。

match_parent表示寬度匹配父內(nèi)容,按鈕外的容器有多寬就顯示多寬。

fill_parent與match_parent相同,android2.2以后就不推薦使用了。

最終顯示效果如下:

布局Layouts之LinearLayout線性布局

二、Java代碼方式布局

上面我們已經(jīng)了解采用XML進(jìn)行LinearLayout布局,我們現(xiàn)在再來學(xué)習(xí)一下如何使用Java代碼完成與之同樣功能。

1、打開“src/com.genwoxue.LinearLayout/MainActivity.java”文件。

然后輸入以下代碼:

布局Layouts之LinearLayout線性布局

在以上代碼中,我們著重分析一下帶有淺藍(lán)色背景部分。

(1)第①部分

導(dǎo)入與LinearLayout、LayoutParams、Button相關(guān)的包。

(2)第②部分

創(chuàng)建線性布局管理器,并且設(shè)置布局管理寬度和高度與方向。

LinearLayout llLayout=new LinearLayout(this):創(chuàng)建線性布局管理器;

LayoutParams lpPara=new LayoutParams( LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT):創(chuàng)建布局參數(shù),構(gòu)造函數(shù)設(shè)置寬度與高度。用于設(shè)置線性布局管理器寬度與高度。

llLayout.setOrientation(LinearLayout.VERTICAL):設(shè)置布局管理器為垂直方向。

(3)第③部分

LayoutParams btnPara=new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT):創(chuàng)建布局參數(shù),構(gòu)造函數(shù)設(shè)置寬度與高度。用于設(shè)置三個(gè)按鈕寬度與高度。

(4)第④部分

創(chuàng)建3個(gè)按鈕:btnFourth、btnFifth、btnSixth,設(shè)置其文本與布局參數(shù)。

(5)第⑤部分

為線性布局管理器添加3個(gè)按鈕。

(6)第⑥部分

super.addContentView(llLayout, lpPara):為當(dāng)前activity添加布局管理器以及布局管理器的參數(shù)對象。

2、顯示效果

布局Layouts之LinearLayout線性布局

MainActivity.java源碼:

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;//別導(dǎo)錯(cuò)了


public class MainActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_main);
LinearLayout llLayout = new LinearLayout(this);
LayoutParams lpPara = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
llLayout.setOrientation(LinearLayout.VERTICAL);
LayoutParams btnPara = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
Button btnFourth = new Button(this);
btnFourth.setLayoutParams(btnPara);
btnFourth.setText("第四個(gè)按鈕");

Button btnFifth = new Button(this);
btnFourth.setLayoutParams(btnPara);
btnFourth.setText("第五個(gè)按鈕");

Button btnSixth = new Button(this);
btnFourth.setLayoutParams(btnPara);
btnFourth.setText("第六個(gè)按鈕");

llLayout.addView(btnFourth);
llLayout.addView(btnFifth);
llLayout.addView(btnSixth);
super.addContentView(llLayout, lpPara);
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}

網(wǎng)站欄目:布局Layouts之LinearLayout線性布局
文章鏈接:http://jinyejixie.com/article6/ijdiig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站維護(hù)網(wǎng)站改版、外貿(mào)建站、面包屑導(dǎo)航、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
惠安县| 兴海县| 明水县| 呼和浩特市| 株洲县| 阜宁县| 抚松县| 石嘴山市| 合水县| 壤塘县| 乌苏市| 赫章县| 新昌县| 衡山县| 香河县| 连平县| 府谷县| 清河县| 嫩江县| 敦煌市| 潞城市| 新余市| 广州市| 沿河| 昌邑市| 福鼎市| 嘉兴市| 贡山| 阿拉善右旗| 察雅县| 攀枝花市| 白水县| 泾阳县| 三台县| 福州市| 鸡东县| 乌什县| 西华县| 和田市| 柘城县| 玉树县|