《Android項(xiàng)目式程序設(shè)計(jì)》02-Android-應(yīng)用界面設(shè)計(jì)寫字字帖_第1頁(yè)
《Android項(xiàng)目式程序設(shè)計(jì)》02-Android-應(yīng)用界面設(shè)計(jì)寫字字帖_第2頁(yè)
《Android項(xiàng)目式程序設(shè)計(jì)》02-Android-應(yīng)用界面設(shè)計(jì)寫字字帖_第3頁(yè)
《Android項(xiàng)目式程序設(shè)計(jì)》02-Android-應(yīng)用界面設(shè)計(jì)寫字字帖_第4頁(yè)
《Android項(xiàng)目式程序設(shè)計(jì)》02-Android-應(yīng)用界面設(shè)計(jì)寫字字帖_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

項(xiàng)目二Android應(yīng)用界面設(shè)計(jì)學(xué)習(xí)目標(biāo)了解視圖與View組件掌握Android應(yīng)用界面的設(shè)計(jì)布局技術(shù)掌握Dialog組件相關(guān)的知識(shí)和技能情景導(dǎo)入Android市場(chǎng)不斷拓展,用戶對(duì)Android界面設(shè)計(jì)的要求也越來越高,希望有一個(gè)美觀、整潔、實(shí)用的界面,因此Android提供了一些常用控件來實(shí)現(xiàn)界面的設(shè)計(jì)。本次任務(wù)主要是設(shè)計(jì)應(yīng)用界面。任務(wù)描述【功能描述】使用線性布局技術(shù)來設(shè)計(jì)應(yīng)用界面主界面布局使用FragmentTabHost實(shí)現(xiàn)三個(gè)界面切換挑選界面控件欄中控件,使用線性布局設(shè)計(jì)第一個(gè)界面使用常用布局設(shè)計(jì)第二個(gè)界面在第三個(gè)界面實(shí)現(xiàn)對(duì)話框功能任務(wù)技能技能點(diǎn)1控件屬性介紹各個(gè)控件的繼承關(guān)系如圖2.9所示,了解各個(gè)控件的繼承關(guān)系對(duì)之后項(xiàng)目的內(nèi)容理解有很大的幫助。任務(wù)技能1文本框與編輯框TextView繼承了View,是EditView的父類,TextView是一個(gè)文本編輯器但Android關(guān)閉了它的編輯功能。開發(fā)一個(gè)可編輯的文本框可使用它的子類EditView,EditView是允許用戶編輯的文本框。EditText與TextView共用大部分XML屬性和方法,二者之間的區(qū)別為EditText可接受用戶輸入信息,文本框與編輯框?qū)傩约懊枋鋈绫?.1所示。屬性描述android:layout_width設(shè)置組件的寬度android:layout_height設(shè)置組件的高度android:id給組件定義一個(gè)id值,供后期使用android:background設(shè)置組件的背景顏色或背景圖片android:text設(shè)置組件的顯示文字android:textColor設(shè)置組件的顯示文字的顏色android:layout_below組件在參考組件的下面android:alignTop同指定組件的頂平行android:maxLength=""限制輸入字?jǐn)?shù)android:digits=''限制輸入數(shù)字和大寫小寫字母android:password='true'可以讓EditText顯示的內(nèi)容自動(dòng)為星號(hào)。android:numeric='true'讓輸入法自動(dòng)變?yōu)閿?shù)字輸入鍵盤,同時(shí)僅允許0-9的數(shù)字輸入android:capitalize='cwj1987僅允許接受輸入cwj1987,一般用于密碼驗(yàn)證android:textColor顯示文本顏色android:textColorHighlight被選中文字的底色,默認(rèn)為藍(lán)色android:textSize設(shè)置文字大小,推薦度量單位”sp”,如”15sp”…………表2.1文本框與編輯框?qū)傩约懊枋鋈蝿?wù)技能任務(wù)技能2Button組件Button繼承了TextView,可供用戶點(diǎn)擊,點(diǎn)擊的時(shí)候時(shí)會(huì)觸發(fā)onClick事件(點(diǎn)擊事件)。按鈕使用簡(jiǎn)單,可設(shè)置Button的背景以及文字等屬性,如果背景為不規(guī)則圖片則能夠開發(fā)出不同規(guī)則形狀的按鈕,Button的屬性設(shè)置方法及描述如表2.2所示。方法描述setClickable(booleanclickable)clickable=true:允許點(diǎn)擊clickable=false:禁止點(diǎn)擊setBackgroundResource(int

resid)通過資源文件設(shè)置背景色resid:資源xml文件IDsetText(CharSequencetext)設(shè)置按鈕顯示文字setTextColor(intcolor)設(shè)置按鈕顯示文字的顏色color可以使用系統(tǒng)Color常量setOnClickListener(OnClickListenerl)設(shè)置按鈕點(diǎn)擊事件表2.2Button屬性設(shè)置方法及描述任務(wù)技能任務(wù)技能3狀態(tài)開關(guān)ToggleButton按鈕是由Button派生出來的,所以Button的所有屬性、方法也同樣可以用于ToggleButton。它的作用一般是切換程序中的某種狀態(tài),ToggleButton屬性設(shè)置方法及描述如表2.3所示。4ImageView及其子類ImageView繼承自View組件,它的功能就是顯示圖片,只要是Drawable對(duì)象,就可使用ImageView來顯示它。任務(wù)技能任務(wù)技能5列表視圖與網(wǎng)格視圖ListView是手機(jī)系統(tǒng)中使用非常廣泛的一種組件,它繼承自LinearLayout布局,以垂直(vertical)列表的形式顯示所有列表項(xiàng),LinearLayout布局會(huì)再技能點(diǎn)二中進(jìn)行講解,生成列表視圖有如下兩種方式。直接使用ListView進(jìn)行創(chuàng)建讓Activity繼承ListActivity

GridView與ListView相似性十分的高,都是列表項(xiàng),但是ListView只可以顯示一列,而GirdView可顯示多列。ListView與GridView都會(huì)使用到適配器,常用適配器如表2.5所示。任務(wù)技能任務(wù)技能技能點(diǎn)2基本布局不同型號(hào)的手機(jī)分辨,尺寸不完全相同,如何讓程序手動(dòng)控制每個(gè)組件的大小位置,會(huì)給編程帶了很大的困難。為了讓不同組件在不同的手機(jī)屏幕上都能運(yùn)行良好,Android提供了布局管理器,可以根據(jù)運(yùn)行平臺(tái)調(diào)整組件的大小,程序員選擇合適的布局管理器。在Android系統(tǒng)中提供了五種基本的布局方式,通過這五種布局方式,能夠?qū)崿F(xiàn)大多數(shù)復(fù)雜界面的設(shè)計(jì),繼承關(guān)系如圖2.14所示。任務(wù)技能2.14布局繼承關(guān)系圖任務(wù)技能1線性布局(LinearLayout)線性布局是將控件排放在水平方向或者垂直方向的一條線上。在線性布局中還有一些比較常用的屬性與設(shè)置方法,如表2.6所示。任務(wù)技能XML屬性對(duì)應(yīng)設(shè)置方法描述android:orientationsetOrientation(int)控制排列方式的屬性horizontal(水平排列)、vertical(垂直、默認(rèn)值)android:gravitysetGravity(int)設(shè)置組件的對(duì)齊方式,該屬性的值有top、botton、left、right、center_vertical、fill_horizontal、center、fill、clip_vertical、clip_horizontal。也,可同時(shí)使用多種對(duì)齊方式,讓其組合在一起。android:dividersetDividerDrawable(Drawable)設(shè)置垂直布局時(shí)兩個(gè)按鈕之間的分隔線android:baselineAlignedsetBaselineAligned(boolean)boolean=false,就會(huì)阻止該布局與他的子元素的基線對(duì)齊;boolean=true則可以android:measureWithlargestChildsetMeasureWithLargestChildEnabled(boolean)boolean=true,帶權(quán)重的子元素都會(huì)被設(shè)置為有最大子元素的最小尺寸任務(wù)技能2相對(duì)布局(RelativeLayout)相對(duì)布局是按照控件間的相對(duì)位置進(jìn)行布局,可以選擇某個(gè)控件作為參照,其它的控件可以在它的任意方向,例如“android:layout_below”屬性指在某個(gè)控件的下面。RelativeLayout的重要屬性如表2.7所示。任務(wù)技能任務(wù)技能3表格布局(TableLayout)表格布局其與平時(shí)使用的Excel表格類似,都是將子元素的位置設(shè)置到具體的行或列中。一個(gè)TableLayout是由許多的TableRow組成的,一個(gè)TableRow就相當(dāng)于TableLayout中的一行,TableRow是LinearLayout的一個(gè)子類,它的某些屬性是一直不變的,比如說排列方式屬性值恒為horizontal,它的android:layout_width和android:layout_height屬性值恒為match_parent和wrap_content。因此其子元素都是橫向排列并且寬高一致的。因?yàn)檫@些系統(tǒng)已經(jīng)設(shè)定這樣的屬性使得每個(gè)TableRow中的子元素都可以認(rèn)為是表格中的單元格。在TableLayout里,單元格可以為空,但注意不能跨行。任務(wù)技能表格布局管理器中,可為單元格設(shè)置如下三種行為方式。Shrinkable:如果某列被設(shè)為Shrinkable,則該列所有單元格寬度可被變大或者變小,這樣將列設(shè)置Shrinkable就可以讓表格適應(yīng)父容器的寬度。Stretchable:如果某列被設(shè)為Stretchable,那么該列的所有單元格寬度可被拉長(zhǎng)或者拉短,這樣就能保證組件能填滿表格的剩余空間。Collapsed:如果某列被設(shè)為Collapsed,那么該列的所有單元格都不顯示了。任務(wù)技能4幀布局(FrameLayout)FrameLayout是五大布局中最簡(jiǎn)單的一種布局,在該布局中,整個(gè)界面被當(dāng)成一塊空白的沒有任何組件的區(qū)域,所有的子元素都不能被指定放置的位置,這一點(diǎn)是其它布局的最大差別,所有的子組件系統(tǒng)會(huì)被默認(rèn)放于這塊區(qū)域的左上角,并且后面的子元素直接覆蓋前面的子元素之上,將前面的子元素部分或全部遮擋。例如在畫板上刷顏料,刷一層就會(huì)將原本位置的顏色覆蓋。任務(wù)技能5絕對(duì)布局(AbsoluteLayout)相較于其他的幾種布局,絕對(duì)布局是很好理解的一種布局,平時(shí)在生活中,我們的家具都是一般擺放在一個(gè)固定位置的,以房子的一個(gè)角作為坐標(biāo)原點(diǎn),然后這個(gè)位置就可以用X,Y來表示。絕對(duì)布局中通過android:layout_x和android:layout_y來指定其子元素的準(zhǔn)確的坐標(biāo)位置。當(dāng)使用AbsoluteLayout作為布局容器是,布局容器不再管理子組件的位置,大小這些需要程序員自行控制。任務(wù)技能技能點(diǎn)3Dialog1Dialog介紹Dialog是Android開發(fā)過程中最常用到的組件之一,它可以用來彈出一個(gè)窗體,這個(gè)窗體的內(nèi)容大多用來提示或警告用戶,Dialog對(duì)話框可以分為5大類,分別是警告對(duì)話框(AlertDialog)、進(jìn)度對(duì)話框(ProgressDialog)、日期選擇對(duì)話框(DatePickerDialog)、時(shí)間選擇對(duì)話框(TimePickerDialog)、自定義對(duì)話框(從Dialog繼承)。任務(wù)技能Dialog的創(chuàng)建方式有兩種:第一種是new一個(gè)Dialog對(duì)象,調(diào)用Dialog對(duì)象的show()和dismiss()方法控制對(duì)話框的顯示和隱藏。第二種在Activity的onCreateDialog(intid)方法中創(chuàng)建Dialog對(duì)象并返回,調(diào)用Activty的showDialog(intid)和dismissDialog(intid)來顯示和隱藏對(duì)話框。區(qū)別在于通過第二種方式創(chuàng)建的對(duì)話框會(huì)繼承Activity的屬性,如獲得Activity的menu事件等。任務(wù)技能AlertDialog的構(gòu)造方法都是Protected(有保護(hù)的),不能直接新建AlertDialog,要使用AlertDialog.Bulider中的create()方法來創(chuàng)建一個(gè)彈窗窗口。想要使用AlertDialog.Bulider創(chuàng)建對(duì)話框需要掌握以下幾個(gè)方法,如表2.8所示。任務(wù)技能任務(wù)實(shí)施第一步:在Eclipse中創(chuàng)建一個(gè)Android工程,從選擇控件欄(如圖2.18所示)中所需控件設(shè)計(jì)主界面。如圖2.5所示,具體如代碼CORE0201所示。圖2.11界面布局任務(wù)實(shí)施第二步:在“res”→“l(fā)ayout”下創(chuàng)建tab_item_view.xml文件填充主界面中FrameLayout信息第三步:創(chuàng)建FragmentPage1文件,并設(shè)計(jì)界面1第四步:創(chuàng)建Frag

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論