轉自:http://blog.csdn.net/brightshadow11111/article/details/9464395
Android本身提供了很多控件比如我們常用的有
文本控件TextView和EditText;
按鈕控件Button和ImageButton
狀態開關按鈕ToggleButton
單選複選按鈕RadioButton和RadioGroup
單選按鈕和複選按鈕CheckBox和RadioButton
圖片控件ImageView
時鐘控件AnalogClock和DigitalClock
進度條ProgressBar和日期與時間選擇控件DatePicker和TimePicker等。
TextView 控件繼承自 View 類。TextView控件的功能是向用戶顯示文本內容同時可選擇性讓用戶編輯文本。其中TextView不允許編輯。
EditText控件 EditText 控件繼承自 TextView。EditText與TextView 最大的不同是 EditText是可以編輯的
Button控件繼承自 TextView 類Button 的用法比較簡單主要是爲 Button 控件設置 View.OnClickListener.監聽器並在監聽器的實現代碼中編寫按鈕按下事件的處理代碼。
ImageButton 控件 ImageButton 繼承自 ImageView。ImageButton 與Button最大的區別是ImageButton沒有text 屬性既按鈕中將顯示圖片而不是文本。 ImageButton 控件中設置顯示圖片可以通過android:src 屬性也可以通過setImageResurce(int ) 方法來實現
ToggleButton 控件是繼承自 Button。ToggleButton 的狀態只能是選中和未選中並且需要爲不同的狀態設置不同的顯示文本。除了繼承自父類的一些屬性和方法之外ToggleButton 也具有一些自己的 ToggleButton 屬性。
CheckBox 和RadioButton 都只有選中和未選中兩種狀態可以通過androidcheck屬性來設置。
不同的是RadioButton 是單選按鈕需要編制到一個RadioGroup 中同一時刻一個RadioGroup 中只能有一個按鈕處於選中狀態。
CheckBox 和RadioButton 都是繼承自 CompoundButton 中繼承了一些成員
ImageView 控件負責顯示圖片其圖片來源既可以是資源文件的id也可以是Drawable 對象或 Bitmap 對象還可以是 Content Provider 的Uri。
AnalogClock繼承自 View AnalogClock 控件顯示模擬時鐘只顯示時針和分針
DigeitalClock 繼承自 TextView。 ctrl+t DigetalClock 顯示數字時鐘可精確到秒。 時鐘控件比較簡單只需要在佈局文件中聲明控件即可。
DatePicker 繼承自FrameLayout類日期選擇控件的主要功能是向用戶提供包含年、月、日的日期數據並允許用戶對其進行選擇。如果要捕獲用戶修改日期選擇控件中數據的事件需要爲DatePicker 添加 onDateChangedListener 監聽器。
TimePicker 同樣繼承自FrameLayout 類。時間選擇控件向用戶顯示一天中的時間可以爲24小時制可以爲AM/PM 制並允許用戶進行選擇。如果要捕獲用戶修改時間數據的事件便需要爲TimePicker 添加OnTimeChangedListener 監聽器
通過對android本身提供的控件的代碼進行研究android中控件都是繼承view類來實現通過重寫ondraw方法來繪製我們所需要的控件。通過這個我們得到兩點提示
第一我們可以在已有的控件的基礎上通過重寫相關方法來實現我們的需求。
第二就是繼承view類或viewgroup類來繪製我們所需要的控件。一般來講通過繼承已有的控件,來自定義控件要簡單一點。