編輯:Android技術基礎
在Android開發中UI設計也是十分重要的,當用戶使用一個App時,最先感受到的不是這款軟件的功能是否強大,而是界面設計是否賞心悅目,用戶體驗是否良好。也可以這樣說,有一個好的界面設計去吸引用戶的使用,才能讓更多的用戶體驗到軟件功能的強大。
那麼,Android中幾種常用布局則顯得至關重要。各個布局既可以單獨使用,也可以嵌套使用,我們應該在實際應用中應靈活變通。
LinearLayout線性布局
LinearLayout是一種線型的布局方式。LinearLayout布局容器內的組件一個挨著一個地排列起來:不僅可以控制個組件橫向排列,也可控制各組件縱向排列。通過orientation屬性設置線性排列的方向是垂直(vertical)還是縱向(horizontal)。
我們下面通過XML布局和Java代碼布局兩種方式分別舉例:
一、XML方式布局
1、創建一個空白Activity
2、打開“res/layout/activity_main.xml”文件,修改成以下代碼。
(1)第①部分
,每個XML文檔都由XML序言開始,在前面的代碼中的第一行便是XML序言,。這行代碼表示按照1.0版本的XML規則進行解析。encoding = "utf-8"表示此xml文件采用utf-8的編碼格式。編碼格式也可以是GB2312。
如果你對此不太明白,請參閱相關XML文檔。
(2)第②部分
(3)第③部分
android:layout_width="match_parent" android:layout_height="match_parent"表示布局管理器寬度和高充將填充整個屏幕寬度和高度。
(4)第④部分
android:orientation="vertical"表示布局管理器內組件采用垂直方向排列。
如果要采用水平方向請使用:horizontal。
3、插入三個按鈕。
4、打開“res/layout/activity_main.xml”文件,修改成以下代碼。
將3個按鈕的android:layout_width的屬性設為:"match_parent"。
該屬性可以有三個值:wrap_content、match_parent、fill_parent。
wrap_content表示寬度匹配內容,簡單地說就是文字有多長按鈕就多長。
match_parent表示寬度匹配父內容,按鈕外的容器有多寬就顯示多寬。
fill_parent與match_parent相同,android2.2以後就不推薦使用了。
最終顯示效果如下:
二、Java代碼方式布局
上面我們已經了解采用XML進行LinearLayout布局,我們現在再來學習一下如何使用Java代碼完成與之同樣功能。
1、打開“src/com.genwoxue.LinearLayout/MainActivity.java”文件。
然後輸入以下代碼:
在以上代碼中,我們著重分析一下帶有淺藍色背景部分。
(1)第①部分
導入與LinearLayout、LayoutParams、Button相關的包。
(2)第②部分
創建線性布局管理器,並且設置布局管理寬度和高度與方向。
LinearLayout llLayout=new LinearLayout(this):創建線性布局管理器;
LayoutParams lpPara=new LayoutParams( LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT):創建布局參數,構造函數設置寬度與高度。用於設置線性布局管理器寬度與高度。
llLayout.setOrientation(LinearLayout.VERTICAL):設置布局管理器為垂直方向。
(3)第③部分
LayoutParams btnPara=new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT):創建布局參數,構造函數設置寬度與高度。用於設置三個按鈕寬度與高度。
(4)第④部分
創建3個按鈕:btnFourth、btnFifth、btnSixth,設置其文本與布局參數。
(5)第⑤部分
為線性布局管理器添加3個按鈕。
(6)第⑥部分
super.addContentView(llLayout, lpPara):為當前activity添加布局管理器以及布局管理器的參數對象。
2、顯示效果
本節引言在3.1中我們對Android中的一個事件處理機制——基於監聽的事件處理機制進行了學習,簡單的說就是為我們的事件源(組件)添加一個監聽器,然
本節引言:相信大家對點擊列表,然後進入詳情這種App並不陌生吧,在購物類App和新聞類App中最為常見:下面我們簡單來講一下流程邏輯!1.邏輯流程講
WebView很簡單,目的就是為了顯示網頁,而且顯示在指定區域中。(1)LoadUrl直接顯示網頁內容;(2)LoadData顯示中文網頁內容。(3)setJavaScr
現代智能手機無論是android、IOS、Windows phone8,其媒體播放器都是必不可少。Android的MediaPlayer包含了Audio和video的播放