Android 自定義滑動開關

2021-07-22 13:59:12 字數 1296 閱讀 7392

自定義view寫了這麼多篇幅,通用的屬性部分**,測量**忽略不計

真正實現的部分就不到100行!先上效果圖

關閉狀態

開啟狀態

動起來

下面我們看下我們的實現;

@override

protected

void

ondraw(canvas canvas)

private

void

drawswichballbyflag(canvas canvas)

private

void

drawswichbg(canvas canvas)

@override

protected

void

onsizechanged(int w, int h, int oldw, int oldh)

public

void

setopenstate(boolean openstate)

public boolean ontouchevent(motionevent event) 

if (movex > viewwidth - strockradio)

swichballx = movex;

break;

case motionevent.action_up:

// 手指離開時,根據up的座標設定view的開關狀態

int upx = (int) event.getx();

if (upx > viewwidth / 2) else

break;

}invalidate();

return

true;

}

核心**結束,由於開關滑塊比較小就沒有加入彈性滑動以及屬性動畫

有興趣的可以加乙個valueanimion在up中進行緩慢的滑動!

(

自定義View例項(三)滑動開關

通過繼承view類自定義view步驟如下 實現view構造方法 測量view的大小,即重寫onmeasure方法 繪製view,即重寫ondraw方法 繼承自view一般不需要重寫onlayout方法 這次我們實現乙個滑動的開關,效果見圖 view的大小設定為背景的寬高 override prote...

Android 自定義開關按鈕樣式

效果圖 1,定義乙個drawable shape thumb off.xml檔案,定義開關關閉時,thumb滑塊顯示的效果。1.0 encoding utf 8 xmlns android android shape rectangle android radius 50dp android hei...

自定義刻度 Android自定義滑動刻度進度條

做到以上的效果圖,就可以知道,兩個模式,首先,定義相應的自定義屬性,額,沒辦法,上頭要求,所以規範點 新建乙個bar attrs.xml檔案 attr declare styleable resources 然後就是 中取得相應的屬性值和設定預設值 然後修改seekbar的線的顏色和滑動塊的屬性,通...