




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
自定義控件講師:玉麒麟黑馬訓練營課程內(nèi)容介紹
黑馬訓練營自定義控件在android開發(fā)中的重要性,是不言而喻,眾人皆知的。希望通過這二天的學習,能讓大家了解自定義控件的原理,熟悉自定義控件的使用步驟,并能寫出一些普通的效果。內(nèi)容介紹:1、使用系統(tǒng)控件,實現(xiàn)自定義的效果,案例有:優(yōu)酷環(huán)形菜單、廣告條(Viewpager)、下拉菜單(spinner)2、自己定義一個類繼承View,實現(xiàn)特定的效果,案例有: 自定義開關(guān)按鈕、水波紋效果3、自定義屬性:給自己的控件,添加自己的屬性,通過demo了解系統(tǒng)解析屬性的過程,并給上一個例子開關(guān)按鈕,添加新屬性。
4、自己定義一個類繼承ViewGroup,實現(xiàn)相應的效果,案例有:仿ViewPager的效果實現(xiàn)、仿網(wǎng)易側(cè)滑菜單Android常用控件回顧Android本身提供了很多控件,如:文本控件 TextView和EditText;圖片控件 ImageView按鈕控件 Button和ImageButton進度條 ProgressBar單選按鈕 RadioButton和RadioGroup復選按鈕 CheckBox狀態(tài)開關(guān)按鈕ToggleButton時鐘控件 AnalogClock和DigitalClock日期與時間選擇控件DatePicker和TimePicker等。。。。
黑馬訓練營
文本控件TextView和EditTextTextView控件繼承自View類。TextView控件的功能是向用戶顯示文本內(nèi)容,TextView不允許編輯。EditText控件繼承自TextView。EditText與TextView最大的不同是EditText是可以編輯的黑馬訓練營圖片控件ImageViewImageView控件負責顯示圖片,其圖片來源既可以是資源文件的id,也可以是Drawable對象或Bitmap對象,還可以是內(nèi)容提供者(ContentProvider)的Uri.黑馬訓練營
按鈕控件Button和ImageButtonButton控件繼承自TextView類,Button的用法比較簡單,主要是為Button設(shè)置一個點擊事件監(jiān)聽器,并在編寫按鈕點擊事件的處理代碼。ImageButton控件繼承自ImageView。ImageButton與Button相同之處:都用于響應按鈕的點擊事件不同之處:ImageButton只能顯示圖片;Button用于顯示文字黑馬訓練營進度條 ProgressBarProgressBar繼承自View,用于顯示正在運行的狀態(tài)。有兩種顯示形式:一種是環(huán)形顯示只用于顯示狀態(tài),沒有具體的進度。第二種是水平顯示,可以顯示具體的進度。通過設(shè)置不同的Style顯示不同的樣式:style="?android:attr/progressBarStyleLarge" 環(huán)形樣式style="?android:attr/progressBarStyleHorizontal" 水平樣式黑馬訓練營單選按鈕RadioButton和
復選按鈕CheckBoxCheckBox和RadioButton都繼承自CompoundButton,都只有選中和未選中兩種狀態(tài),可以通過checked屬性來設(shè)置。不同的是RadioButton是單選按鈕,在一個RadioGroup中只能有一個RadioButton按鈕處于選中狀態(tài);CheckBox則可以有多個按鈕被選中。黑馬訓練營
狀態(tài)開關(guān)按鈕ToggleButtonToggleButton控件是繼承自CompoundButton。ToggleButton的狀態(tài)只能是選中和未選中,并且需要為不同的狀態(tài)設(shè)置不同的顯示文本。除了繼承自父類的一些屬性和方法之外,ToggleButton也具有一些自己的屬性。黑馬訓練營時鐘控件
AnalogClock和DigitalClockAnalogClock繼承自View,用于顯示模擬時鐘只顯示時針和分針。DigeitalClock繼承自TextView。用于顯示數(shù)字時鐘可精確到秒。時鐘控件比較簡單,只需要在布局文件中聲明控件即可。黑馬訓練營日期選擇器DatePicker和
時間選擇器TimePickerDatePicker繼承自FrameLayout類,日期選擇控件的主要功能是向用戶提供包含年、月、日的日期數(shù)據(jù),并允許用戶對其修改。如果要捕獲這個修改,可以為DatePicker添加onDateChangedListener監(jiān)聽器。TimePicker同樣繼承自FrameLayout類。時間選擇控件向用戶顯示一天中的時間,可以為24小時制,可以為AM/PM制,并允許用戶進行修改。如果要捕獲用戶的修改事件,需要為TimePicker添加OnTimeChangedListener監(jiān)聽器黑馬訓練營黑馬訓練營系統(tǒng)提供的控件雖然很豐富,
但是,還遠遠不夠。有的時候我們必須要自己定義控件來滿足我們的要求。使用系統(tǒng)控件組合成新的控件黑馬訓練營知識點小結(jié):黑馬訓練營1、相對布局的練習,要先聲明做為基準的view對象。2、RotateAnim動畫的定義,默認的旋轉(zhuǎn)圓心是從標原點,水平向右為0度,角度按順時針方向增加。3、添加動畫執(zhí)行的監(jiān)聽,以解決按鍵雙擊時,動畫不正常的bug。4、對ViewPager的使用,PagerAdapter中覆蓋的4個方法的具體含義。5、ViewPager實現(xiàn)左、右無限循環(huán)。6、對頁面切換進行事件監(jiān)聽。使用現(xiàn)有控件組合成新控件黑馬訓練營下拉框效果:在editText的右邊放置一個小箭頭的圖片,點擊圖片,在editText的下方彈出一個popupWindow,并對popupWindow進行一些設(shè)置即得到想要的效果。繼承已有View實現(xiàn)自定義View通過對android原生控件的研究,可以發(fā)現(xiàn)android中的控件都是繼承view類,如textView、ImageView等,通過重寫相關(guān)的方法來實現(xiàn)新的效果,通過這個我們得到兩點:我們可以在已有控件的基礎(chǔ)上,通過重寫相關(guān)方法來實現(xiàn)我們的需求。繼承view類或viewgroup類,來創(chuàng)建我們所需要的控件。一般來講,通過繼承已有的控件,來自定義控件要簡單一點。黑馬訓練營繼承已有View實現(xiàn)自定義View黑馬訓練營滑動開關(guān)按鈕主要步驟:1、自定義類MyToggleButton繼承自View2、重寫onMeasure方法,指定控件大小。3、重寫onDraw方法,繪制控件內(nèi)容。4、重寫onTouchEvent方法,對touch事件進行解析。為新控件添加自定義的屬性黑馬訓練營主要步驟:1、在attrs.xml文件中聲明屬性,有屬性名:name和格式:format。如:
<declare-styleablename="MyToggleBtn"><attrname="current_state"format="boolean"/></declare-styleable>2、在布局文件中使用新屬性,使用之前必須先聲明命名空間,如:xmlns:heima=""3、在自定義view的構(gòu)造方法當中,通過解析AttributeSet對象,獲得所需要的屬性值。繼承已有ViewGroup實現(xiàn)自定義控件黑馬訓練營模擬ViewPager的效果:實現(xiàn)步驟:1、自定義view繼承viewGroup。2、重寫onLayout方法,為每一個子View確定位置。3、重寫onTouchEvent方法,監(jiān)聽touch事件,并用scrollTo()或scrollBy()方法移動view,4、監(jiān)聽UP事件,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)境科學與生態(tài)保護概念應用試題
- 農(nóng)業(yè)技術(shù)創(chuàng)新與應用研發(fā)合作合同
- 招商代理協(xié)議合同
- 教育培訓合同
- IT系統(tǒng)集成與實施協(xié)議
- 江西省宜春市豐城市第九中學2024-2025學年高二下學期開學考試地理試題(原卷版+解析版)
- 業(yè)委會物業(yè)管理委托合同
- 人力資源管理勞動合同
- 環(huán)境工程安全管理測試試題詳解
- 礦井測風工應知應會考試題庫300題(含答案)
- 硬筆書法全冊教案共20課時
- 人民幣上的風景名勝課件
- 小學雙減作業(yè)設(shè)計小學語文五年級下冊第八單元作業(yè)設(shè)計案例
- 2.0MWp屋頂太陽能分布式光伏發(fā)電項目監(jiān)理大綱2
- 山的飛花令經(jīng)典1000首小學
- 煉油廠化工廠車間崗位勝任力素質(zhì)模型設(shè)計
- 電子課件-《市場營銷》-A45-2298完整版教學課件全書電子講義(最新)
- 紅土鎳礦濕法冶煉技術(shù)綜述
- 隧道開挖作業(yè)臺車計算書
- 水利水電工程金屬結(jié)構(gòu)與機電設(shè)備安裝安全技術(shù)規(guī)程
- 新視野大學英語讀寫譯4U校園第一單元課后測試答案
評論
0/150
提交評論