溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android中怎么設(shè)計用戶界面

發(fā)布時間:2021-06-28 15:50:37 來源:億速云 閱讀:146 作者:Leah 欄目:移動開發(fā)

今天就跟大家聊聊有關(guān)Android中怎么設(shè)計用戶界面,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

Activity是Android應(yīng)用用戶界面的基本組成部件。但Activity本身并不提供用戶界面(User  Interface)。從程序結(jié)構(gòu)層次上來說,一個Android應(yīng)用是類android.app.Application的一個實例,  Application中可以包含多個android.app.Activity實例。每個Activity  帶一個Window類,這個類在Android平臺上沒有提供太多功能,主要可以用來控制標(biāo)題欄(屏幕頂端)。比如設(shè)置UI全屏顯示可以使用如下代碼:

requestWindowFeature(Window.FEATURE_NO_TITLE);    indow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,     WindowManager.LayoutParams.FLAG_FULLSCREEN);

Activty缺省是不含用戶界面,如需顯示用戶界面,則可以調(diào)用setContentView()來設(shè)置Activity的ContentView。 ConentView描述了具體的UI組件,如文本框,標(biāo)簽,列表框,圖片框的。

Android中怎么設(shè)計用戶界面

Android的用戶界面其實就是指ContentView的設(shè)計?!癡iew”開始會使人產(chǎn)生誤解,在其它平臺“View”一般指類似Form的 概念。而在Android平臺上View是UI組件,相當(dāng)于其他平臺的Component,ViewGroup相當(dāng)于其它平臺的Container,如下 圖所示:

Android中怎么設(shè)計用戶界面

有了這個對應(yīng)關(guān)系就很容易將你已有的用戶界面設(shè)計知識用在Android的用戶界面設(shè)計上來。

此外Android用戶界面設(shè)計一個推薦的方法是使用XML來描述UI,這也不是Android平臺的首創(chuàng),Java ME  Polish,WPF,Silverlight等都采用XML來描述UI,使用XML來描述的好處是將用戶界面和程序邏輯分開,可以做到用戶界面的改變不 影響程序邏輯,程序邏輯的變動也可以不影響用戶界面,實際上是采用了MVC模式的設(shè)計。Activity  是MVC中的Controller,Activity的ContentView則是MVC中的View。如果你不想使用XML來描述UI,也可以使用代碼 來創(chuàng)建UI,不過這種方法既麻煩,也增加了模塊之間的耦合度。

理解了Android的View和ViewGroup之后,具體設(shè)計用戶界面并不復(fù)雜,一般來說ViewGroup定義它的子View的布局 Layout,也就是其它View  (文本框,標(biāo)簽等控件或是其它ViewGroup)在用戶界面的位置安排。如上圖所示,這個層次關(guān)系可以嵌套。通過嵌套,你可以定義出任意用戶界面。

Android中怎么設(shè)計用戶界面

Android中的基本布局如下:

FrameLayout

最簡單的布局對象

在屏幕上故意保留的空白空間,你可以之后填充一個單獨的對象

例如:一個你要更換的圖片

所有子元素都釘?shù)狡聊坏淖笊辖?/p>

不能為子元素指定位置

LinearLayout

在一個方向上(垂直或水平)對齊所有子元素

所有子元素一個跟一個地堆放

一個垂直列表每行將只有一個子元素(無論它們有多寬)

一個水平列表只是一列的高度(***子元素的高度來填充)

TableLayout

把子元素放入到行與列中

不顯示行、列或是單元格邊界線

單元格不能橫跨行,如HTML 中一樣

AbsoluteLayout

使子元素能夠指明確切的X / Y 坐標(biāo)顯示在屏幕上

(0,0)是左上角

當(dāng)你下移或右移時,坐標(biāo)值增加

允許元素重疊(但是不推薦)

注意:

一般建議不使用AbsoluteLayout 除非你有很好的理由來使用它

因為它相當(dāng)嚴(yán)格并且在不同的設(shè)備顯示中不能很好地工作

Android中怎么設(shè)計用戶界面

RelativeLayout

讓子元素指定它們相對于其他元素的位置(通過ID 來指定)或相對于父布局對象

Android中怎么設(shè)計用戶界面

看完上述內(nèi)容,你們對Android中怎么設(shè)計用戶界面有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI