




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
目錄基本控件概述Android基本的控件總結(jié)Android事件處理一、基本控件概述Android應(yīng)用開發(fā)是一個(gè)基于圖形用戶界面(GraphicalUserInterface,簡稱GUI)的開發(fā),為了達(dá)到用戶滿意的界面,最后通過點(diǎn)擊相關(guān)圖形界面,就能很好的操作這個(gè)應(yīng)用,所以程序員設(shè)計(jì)的應(yīng)用程序必須以用戶友好性為前提。Android提供了大量功能強(qiáng)大的UI組件,并且這些組件配合使用事件響應(yīng)機(jī)制,能完成用戶點(diǎn)擊后的相關(guān)動(dòng)作行為,這些組件我們就稱為控件。關(guān)于View類的屬性
View類常用的XML屬性屬性方法含義android:backgroundsetBackgroudResource(int)設(shè)置背景android:clickablesetClikable(boolean)設(shè)置View是否響應(yīng)單擊事件android:visiblesetVisible(int)控制View的可見性android:focusablesetFocuable(boolean)控件View是否可以獲取焦點(diǎn)android:idsetId(int)為View設(shè)置標(biāo)識(shí)符,可通過findViewById方法獲取二、Android基本的控件所有可視控件都繼承View類屬性。表3-1View常用的屬性ViewGroupViewGroup(視圖組)是android.view.Viewgroup的一個(gè)實(shí)例,是一特殊類型的視圖,可以視為View的容器。ViewGroup的子控件既可以是View類,也可以是ViewGroup類。使用ViewGroup可以創(chuàng)建比較復(fù)雜的界面元素。TextView類常用的屬性TextView屬性方法含義android:textsetText(charSequence)設(shè)置TextView顯示文本的內(nèi)容android:textSizesetTextSize(float)設(shè)置TextView的文本大小android:textColorsetTextColor(ColorStateList)設(shè)置TextView的文本顏色android:textStylesetTextStyle(TextStyle)設(shè)置TextView的文本風(fēng)格(如粗體、斜體)android:gravitysetGravity(int)設(shè)置TextView在文本框內(nèi)文本的對齊方式android:linessetLines(int)設(shè)置TextView最多占幾行android:heightsetHeight(int)設(shè)置TextView的高度,以像素為單位android:widthsetWidth(int)設(shè)置TextView的寬度,以像素為單位android:paddingSetPadding(int)設(shè)置TextView中顯示文本與其父容器邊界的間距表3-2TextView常用屬性以上屬性的區(qū)別android:padding與android:layout_margin的區(qū)別
Padding是以父View為參考點(diǎn),規(guī)定它里面的內(nèi)容與這個(gè)父View邊界的距離。layout_margin是以自己為參考點(diǎn),規(guī)定自己和其它(上下左右)的View之間的距離,如果在當(dāng)前這一級(jí)只有一個(gè)View,那它設(shè)置的效果就和Padding一樣。android:gravity與android:layout_gravity的區(qū)別gravity用于設(shè)置這個(gè)View內(nèi)所有子元素的對齊方式;layout_gravity用于設(shè)置這個(gè)View在父容器中的對齊方式。特別說明:TextView的屬性之a(chǎn)ndroid:textSize設(shè)置標(biāo)簽中字體的大小,它一般以單位sp來表示字體大小單位?!纠?.1】設(shè)計(jì)如圖3-1所示的布局文件。圖3-1TextViewde效果1<TextView//控件的開始標(biāo)志
2android:layout_width=“wrap_content“//定義了寬度
3android:layout_height=”wrap_content“//定義了長度
4android:id=”@+id/username“//id為username
5android:textSize=”25sp“//字符大小
6android:textColor=”#FF0000“//文本顏色
7android:background=”#008000“//文本框的背景顏色
8android:padding=”15dip“//文本與框的內(nèi)間距
9android:text=”這里是一個(gè)TextView,可以直接看到顯示結(jié)果!“//文本內(nèi)容
10/>
//結(jié)束標(biāo)志
Button控件按鈕
Button繼承了TextView,其主要的作用是在界面上生成一個(gè)按鈕,當(dāng)需要用戶點(diǎn)擊界面某個(gè)區(qū)域來產(chǎn)生特定的行為時(shí),就可以使用Button。用戶點(diǎn)擊這個(gè)按鈕后將會(huì)觸發(fā)一個(gè)onClick事件,還要為按鈕添加setOnClickListener()方法才能真正實(shí)現(xiàn)完整的事件監(jiān)聽。在JAVA文件中進(jìn)行編寫關(guān)聯(lián)。
Button控件位于Android.widget.Button類中,如果Java代碼中使用這個(gè)控件,需要在頭部添加“importandroid.widget.Button;”語句。
EditText
EditText(輸入框)可以向用戶顯示文本內(nèi)容,也允許用戶對文本內(nèi)容進(jìn)行編輯,它為TextView的子類,擁有TextView所有屬性。最主要用途是用戶登錄界面,如用戶名與密碼等信息的輸入。EditText定義位于Android.widget.EditText類中,如果Java代碼中使用這個(gè)控件,需要的頭部添加“importandroid.widget.EditText;”。EditText特有屬性:android:digits:指定字段只接受某些字符;android:hint:輸入為空時(shí)給的提示;android:inputType:限定輸入的字符類型;android:singleLine:控制字段是單行輸入框還是多行輸入框(換句話說,按回車鍵是將焦點(diǎn)移到下一個(gè)部件,還是換行)。
ImageViewImageView類常用的屬性屬性方法含義android:adjustViewBoundssetAdjustViewBounds(boolean)是否保持圖片的寬高比android:maxHeightsetMaxHeight(int)設(shè)置View的最大高度android:maxWidthsetMaxWidth(int)設(shè)置View的最大寬度android:srcsetImageResource(int)設(shè)置View的drawable(如圖片,也可以是顏色,但是需要指定View的大?。゛ndroid:scaleTypesetScaleType(ImageView.ScaleType)調(diào)整或移動(dòng)圖片來適應(yīng)ImageView的尺寸,當(dāng)scaleType
取值為fitXY時(shí)拉伸圖片(不按比例)以填充View的寬高;當(dāng)scaleType取值為Center時(shí)按原圖大小居中顯示;當(dāng)scaleType取值為centerCrop時(shí)按比例擴(kuò)大圖片居中顯示;當(dāng)scaleType取值為fitCenter時(shí)把圖片按比例擴(kuò)大/縮小到View的寬度并居中顯示。表3-3ImageView常用屬性
CheckBox(復(fù)選框)
方法含義isChecked()判斷是否被選中,如選中則為true,否則為false。setChecked(booleanchecked)通過傳參來改變控件的狀態(tài)。performClick()使用代碼主動(dòng)去調(diào)用控件的點(diǎn)擊事件。toggle()取反控件選中的狀態(tài),即原來是選中則返回未選中,原來未選中則返回選中。setOnCheckedChangeListener(CompoundButton.OnCheckedChangeListenerlistener)為控件添加OnCheckedChangeListener監(jiān)聽器。CheckBox常用方法表3-4CheckBox常用屬性
RadioButton和RadioGroup
RadioButton與CheckBox不同的,在于一組CheckBox可以一次選中多個(gè),而RadioButton只能選中其中一個(gè),所以RadioButton通常要與RadioGroup一起使用,用于定義一組單選按鈕。如下圖所示:圖3-2一個(gè)RadioButton效果
DatePicker(日期控件)DatePicker常用方法
方法含義getYear()獲取當(dāng)前日期的年getMonth()獲取當(dāng)前日期的月getDayOfMonth()獲取當(dāng)前日期的日setMaxDate(longmaxDate)設(shè)置最大日期setMinDate(longminDate)設(shè)置最小日期updateDate(intyear,intmonth,intdayOfMonth)更新當(dāng)前日期init(intyear,intmonthOfYear,intdayOfMonth,DatePicker.OnDateChangedListeneronDateChangedListener);初始化日期,以onDateChangedListener為監(jiān)聽器對象,監(jiān)聽日期的變化表3-5DatePicker常用方法
TimePicker(時(shí)間控件)TimePicker常用方法
方法含義getCurrentHour()獲取當(dāng)前時(shí)間的小時(shí)getCurrentMinute()獲取當(dāng)前時(shí)間的分鐘is24HourView()獲取是否為24小時(shí)模式setCurrentHour(IntegercurrentHour)設(shè)置當(dāng)前時(shí)間的小時(shí)setCurrentMinute(IntegercurrentMinute)設(shè)置當(dāng)前時(shí)間的分鐘setIs24HourView(Booleanis24HourView)設(shè)置24小時(shí)模式setEnabled(Booleanenabled)設(shè)置時(shí)間控件是否可用setOnTimeChangedListener(TimePicker.OnTimeChangedListener
onTimeChangedListener)為時(shí)間控件添加OnTimeChangedListener監(jiān)聽器表3-6TimePicker常用方法三、Android事件處理
基于回調(diào)的事件處理
對于回調(diào)的事件處理,主要的實(shí)現(xiàn)方法是通過重寫Android中特定組件的回調(diào)方法和Android中Activity的回調(diào)方法?;诒O(jiān)聽的事件處理
對于監(jiān)聽的事件處理,主要的實(shí)現(xiàn)方法是為Android界面上的控件綁定特定的事件監(jiān)聽器,為程序員處理各種邏輯操作。一般情況下,基于回調(diào)的事件處理用于處理一些具有普遍性的事件;有些操作在無法基于回調(diào)的事件處理時(shí),就要使用基于監(jiān)聽的事件處理?;诨卣{(diào)的事件處理
onKeyDown()方法聲明格式:booleanonKeyUp(intkeyCode,KeyEventevent)onKeyUp()方法聲明格式:booleanonKeyUp(intkeyCode,KeyEventevent)onTouchEvent()方法聲明格式:publicbooleanonTouchEvent(MotionEventevent)【例3.7】在屏幕區(qū)域內(nèi)捕獲用戶的觸擊、抬起與滑動(dòng)事件,并記錄相關(guān)事件的坐標(biāo)。
在res/layout目錄下的布局xml文件中編寫代碼。在src/com.hzu.touch_activity目錄下的java文件中編寫代碼。圖3-3屏幕區(qū)域內(nèi)捕獲用戶操作基于監(jiān)聽的事件處理
EventSource(事件源):產(chǎn)生這個(gè)事件的組件即事件發(fā)生的來源,如按鈕、窗口等。Event(事件):UI上面的事件源發(fā)生的特定的事件,并且該事件封裝了該操作的相關(guān)信息,當(dāng)應(yīng)用程序需要知道事件源上所發(fā)生事件的具體信息,一般都是由Event對象來取得,如用戶觸摸屏幕的位置等。EventListener(事件監(jiān)聽器):監(jiān)聽事件源發(fā)生的事件,并對被監(jiān)聽的事件做出相應(yīng)的響應(yīng)。一個(gè)事件監(jiān)聽器可包含多個(gè)事件處理器,每一個(gè)事件處理器就是一個(gè)事件處理
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 碳酸飲料考試題及答案
- 無人監(jiān)督面試題及答案
- 電工實(shí)操試題及答案
- 報(bào)紙記者面試題及答案
- 技師色彩考試題及答案
- 勞動(dòng)方面面試題及答案
- 武術(shù)劍法面試題及答案
- 信息類文本閱讀(練習(xí))(原卷版)
- 南通海門中學(xué)2025屆高三上學(xué)期第一次調(diào)研考試語文試題答案
- 《雨巷》優(yōu)教導(dǎo)學(xué)案
- 園林綠化工程施工質(zhì)量風(fēng)險(xiǎn)識(shí)別及控制措施
- 鉆孔樁全護(hù)筒跟進(jìn)施工方案
- 合伙經(jīng)營合同萬能模板
- 《實(shí)驗(yàn)室生物安全》課件
- 井下礦山頂板安全知識(shí)培訓(xùn)
- 云計(jì)算環(huán)境下桌面維保服務(wù)方案
- 2024-2030年中國科技孵化器產(chǎn)業(yè)運(yùn)行動(dòng)態(tài)及投資發(fā)展前景調(diào)研報(bào)告
- 《兩用物項(xiàng)證》課件
- 江蘇省南京市雨花臺(tái)區(qū)實(shí)驗(yàn)小學(xué)2024-2025學(xué)年五年級(jí)上學(xué)期期中數(shù)學(xué)試題(文字版)
- 應(yīng)急疏散演練手冊
- RPA財(cái)務(wù)機(jī)器人開發(fā)與應(yīng)用 課件 6.2 RPA銀企對賬機(jī)器人
評論
0/150
提交評論