android 自定義控制項繼承TextView

2021-07-10 05:18:35 字數 1351 閱讀 4477

在原生控制項上進行擴充套件,增加新的功能

一般是在ondraw() 方法中對原生控制項進行擴充套件

下面以乙個textview 為例,來看看如何使用擴充套件原生控制項的方法建立新的控制項

/*

* 對現有控制項進行擴充套件

* */

public class m_textview extends textview

public m_textview(context context, attributeset attrs)

public m_textview(context context)

@override

protected void ondraw(canvas canvas)

}

在布局檔案中使用:

例項二:給文字增加閃動效果:

public class m_textview2  extends textview 

public m_textview2(context context, attributeset attrs, int defstyle)

public m_textview2(context context, attributeset attrs)

private lineargradient mlineargradient;

private matrix mgradientmatrix;

private paint mpaint;

private int mviewwidth = 0;

private int mtranslate = 0;

@override

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

null,

shader.tilemode.clamp);

mpaint.setshader(mlineargradient);

mgradientmatrix = new matrix();

}} }

@override

protected void ondraw(canvas canvas)

mgradientmatrix.settranslate(mtranslate, 0);

mlineargradient.setlocalmatrix(mgradientmatrix);

postinvalidatedelayed(50);

} }}

xml中使用:

Android自定義控制項(三)繼承控制項

繼承控制項是我們android開發中最重要也是最常使用的控制項,它不同於自繪控制項和組合控制項,它不需要我們自己去重新去實現乙個控制項。物件導向的乙個重要特性就是繼承,相信各位同學對繼承的了解都已經非常深入了,繼承控制項理所當然會擁有父類的所有特性。我們去實現乙個繼承控制項的原因,往往是原生控制項已...

Android 自定義控制項

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

android自定義控制項

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