Android自定義View的實現方法實例詳解
一、自繪控件
下面我們準備來自定義一個計數器View,這個View可以響應用戶的點擊事件,并自動記錄一共點擊了多少次。新建一個CounterView繼承自View,代碼如下所示:
可以看到,首先我們在CounterView的構造函數中初始化了一些數據,并給這個View的本身注冊了點擊事件,這樣當CounterView被點擊的時候,onClick()方法就會得到調用。而onClick()方法中的邏輯就更加簡單了,只是對mCount這個計數器加1,然后調用invalidate()方法。通過 Android視圖狀態(tài)及重繪流程分析,帶你一步步深入了解View(三) 這篇文章的學習我們都已經知道,調用invalidate()方法會導致視圖進行重繪,因此onDraw()方法在稍后就將會得到調用。
這樣,一個自定義的View就已經完成了,并且目前這個CounterView是具備自動計數功能的。那么剩下的問題就是如何讓這個View在界面上顯示出來了,其實這也非常簡單,我們只需要像使用普通的控件一樣來使用CounterView就可以了。比如在布局文件中加入如下代碼:
可以看到,這里我們將CounterView放入了一個RelativeLayout中,然后可以像使用普通控件來給CounterView指定各種屬性,比如通過layout_width和layout_height來指定CounterView的寬高,通過android:layout_centerInParent來指定它在布局里居中顯示。只不過需要注意,自定義的View在使用的時候一定要寫出完整的包名,不然系統(tǒng)將無法找到這個View。
總結
以上所述是小編給大家介紹的Android自定義View的實現方法實例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
Android App開發(fā)中自定義View和ViewGroup的實例教程
這篇文章主要介紹了Android App開發(fā)中自定義View和ViewGroup的實例教程,分別介紹了進度條和圖片上傳并排列的例子,效果很好很強大,需要的朋友可以參考下2016-05-05Android開發(fā)中記一個SwipeMenuListView側滑刪除錯亂的Bug
這篇文章主要介紹了Android開發(fā)中記一個SwipeMenuListView側滑刪除錯亂的Bug的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-09-09Android中RecyclerView拖拽、側刪功能的實現代碼
這篇文章主要介紹了Android中RecyclerView拖拽、側刪功能的實現代碼,需要的朋友可以參考下2017-09-09android開發(fā)教程之android的handler使用方法
這篇文章主要介紹了android的handler使用方法,大家參考使用吧2014-01-01