寫android自定義控制項

2021-07-27 10:25:52 字數 1468 閱讀 7255

什麼是自定義控制項?

首先你要知道什麼是控制項:如textview、webview等,他們是view的子類,他們存在於androidsdk中platforms資料夾下android.jar中依賴於你的專案。

在你的xml布局檔案中你需要在你的根layout標籤下宣告xml namespaces (xml的命名空間)

xmlns:android="" 這樣xml就能找到android.jar中的控制項了。

同樣要呼叫自定義控制項需要xmlns:aaaa=""

aaaa為命名空間標記,讓系統記錄在案,你在要以此名稱引用你的自定義屬性。

bbbb是你專案的包名。

如此引用

:custom=""

android:layout_width="match_parent"

android:layout_height="match_parent" >

customtitleview

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:padding="10dp"

android:id="@+id/q1"

custom:ctextcolor="#ff0000"

custom

:cext="3712"

custom:ctextsize="40sp" />

屬性設定與屬性獲取

乙個控制項如何從你的腦海便成現實呢,你要描述它,設定他的屬性,如下設定:

在res/values/  下建立乙個attrs.xml , 在裡面定義我們的屬性和宣告我們的整個樣式,android中

我們的自定義控制項類從xml資源獲取到這些屬性

如此<?xml version="1.0" encoding="utf-8"?>

ctext" format="string" />

ctextcolor" format="color" />

ctextsize" format="dimension" />

customtextview">

ctext" />

ctextcolor" />

ctextsize" />

換乙個順序敘述,我們先建立自定義控制項類,起乙個名字比如customtextview,讓他繼承view

最終效果使用者會設定這個控制項的各個屬性,而我們這個類要做的就是處理使用者設定的各個屬性,使他們完成使命。

大概通過構造()及重寫view的onmeasure()ondraw()方法完成繪製

這樣就可以寫出各種各樣的控制項了,具體寫法與api不在此文範疇。傳送門

Android 自定義控制項

幹android也有一段的時間了,自定義這塊的東西覺得還是很有比較複習一下基礎的東西。自定義控制項和自定義元件基本上的使用都是在專案中基本的android控制項滿足不了需求的時候使用的。所以,如果要高出特別炫的特效,或者比較特殊的控制項排列方式,例如瀑布流,那麼就要好好學學自定義咯。首先,先簡單的介...

android自定義控制項

android自定義控制項 二 入門,繼承view 說說android 兩種為自定義元件新增屬性的使用方法和區別 自定義控制項的屬性 自定義控制項 今天花了3,4個小時看了自定義控制項,看 懂了,還沒有實踐,因為時間不夠,日後實踐。總結下 自定義控制項有3種方式 繼承已有控制項 繼承乙個容器控制項,...

Android自定義控制項

android學習筆記,整理給自己複習的時候看的,謝謝!1.自定義開關 1.宣告介面物件 public inte ce onswitchstateupdatelistener 2.新增設定介面物件的方法,外部進行呼叫 public void setonswitchstateupdatelistene...