在res/values下面新建attrs.xml屬性檔案
<?xml version="1.0" encoding="utf-8"?>
如上面的xml檔案第一部分是公共的屬性,第二部分是自定義控制項mycustomview的主題樣式,該主題樣式裡的屬性必須包含在公共屬性裡面。
言外之意就是公共屬性可以被多個自定義控制項主題樣式使用。
package com.example.mytextview;
import android.content.context;
import android.content.res.resources;
import android.content.res.typedarray;
import android.graphics.canvas;
import android.graphics.color;
import android.graphics.paint;
import android.graphics.rect;
import android.util.attributeset;
import android.util.log;
import android.view.view;
public class mytextview extends view
public mytextview(context context, attributeset attrs)
public mytextview(context context, attributeset attrs, int defstyleattr)
}attrarray.recycle();
init();}}
/*** 初始化
*/private void init()
@override
protected void ondraw(canvas canvas)
@override
protected void onmeasure(int widthmeasurespec, int heightmeasurespec) else
if (heightmode == measurespec.exactly) else
/*** 最後呼叫父類方法,把view的大小告訴父布局。
*/setmeasureddimension(width, height);}}
xmlns後邊的custom這個名字可以任意取,屬性設定就是使用這個名字開頭。
自定義控制項 自定義鐘錶
private context mcontext 畫筆 private paint mpaint 控制項的寬 private int mwidth x方向的圓心座標 private int center 鐘錶的半徑 private int mradio 圓環的寬 private int stroke...
自定義控制項
首先是以下這幾項,attribute defaultproperty指定元件的預設屬性,toolboxdata指定當從ide工具中的 工具箱中拖動自定義控制項時為它生成的預設標記 defaultproperty text toolboxdata mycontrol runat server 上面這些...
自定義控制項
新聞管理 using system using system.collections.generic using system.linq using system.web using system.web.ui using system.web.ui.webcontrols namespace ne...