構造Android複合控件

在Android的界面設計中,經常使用到比較類似的佈局,比如說:系統設置等等地方,而這些佈局每次單獨的使用會使用大量的代碼進行構建,在這裏我給各位介紹一種複合控件的使用,如有不對之處,請指教。1.單個子項的代碼:單個子項的佈局文件就相當於ListView的item類似,實際上就是界面上相似的佈局盡最大的可能統一到一個佈局文件中,容納擁有最多的控件的佈局,通過屬性值來控制佈局中各個控件的顯示。可以儘可能多的把單個控件結合進來,但是這同時得增多對界面控制的屬性。依據實際情況而定。2.自定義Android的屬性:在values文件加下新建resources.xml文件,在其中寫入自定義的屬性集(自己取得名字,如果哪位知道真正的名字,請指教),並且設置其中的各個屬性的類型(各個屬性的類型設置可以參考此博客http://www.cnblogs.com/rayray/p/3442026.html)。這些屬性用來控制你的單個子項界面顯示效果以及其中各自的屬性,根據自己想要實現何種控制,爲調用複合控件提供足夠的接口來進行子項界面的控制。注意如果多個地方使用統一名字,必須將屬性設置至全局中.也就是與declare-styleable同一級。3.自定義複合控件類:這裏是將子項界面佈局與屬性集相結合,是整個複合控件的核心。該類中建議儘量使用多的接口給之後的代碼控制子項界面提供入口。4.使用複合控件:在這裏我們需要引入自定義的屬性集,通過xmlns:infoitem="http://schemas.android.com/apk/res/com.example.test",com.example.test爲你項目的包名,前綴是相同的,這樣我們就可以像Android中定義的屬性一樣進行使用,比如說infoitem:title=""便是使用之前我們定義的屬性集中的屬性,之後進行頁面加載的時候,Android機制通過我們自定義的複合控件類進行設置,這樣便達到我們的效果。5.使用複合控件的接口:下面是通過代碼進行對複合控件的調用,可以通過代碼進行控制界面的顯示以及爲其中的控件設置各種事件,就如同我們使用EditText等Android自帶的控件一樣,只不過我們調用的是我們自定義的一些方法和接口。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章