Android使用AttributeSet自定义控件的方法

参考资料:http://www.cnblogs.com/zwl12549/archive/2011/04/13/2015366.html

http://blog.csdn.net/Android_Tutor/article/details/5508615
http://blog.csdn.net/czh0766/article/details/5912237

Android使用AttributeSet自定义控件的方法:

例子:
package www.dianmobile.bill_ming.myview;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.View;

public class MyView extends View{

	public MyView(Context context, AttributeSet attrs) {
		super(context, attrs);
		// TODO Auto-generated constructor stub
	}

	@Override
	protected void onDraw(Canvas canvas) {
		super.onDraw(canvas);
		canvas.drawColor(Color.BLACK);       //绘制黑色背景
		Paint paint = new Paint();   				//创建画笔
		paint.setColor(Color.GRAY); 				//设置画笔颜色
		
		//绘制矩形
		canvas.drawRect(10, 10, 110, 110, paint);
		//字符串,以字符串下面为基准
		canvas.drawText("哈哈哈哈哈哈哈", 10, 130, paint);
		//定义一个矩形
		RectF rf1 = new RectF(10,130,110,230);
		//画弧 顺时针
		canvas.drawArc(rf1, 0, 45,true, paint);
		//画线
		canvas.drawLine(150, 10, 250, 110, paint);
		//定义一个矩形
		RectF rf2 = new RectF(150,130,250,230);
		//画圆
		canvas.drawOval(rf2, paint);
	}

	
}
res下要建一个attr.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="MyView">
        <attr name="sidebuffer" format="integer" />
    </declare-styleable>
</resources>

用时:
   private MyView mMyView = null;
   mMyView = (MyView)findViewById(R.id.myView);



你可能感兴趣的:(Android使用AttributeSet自定义控件的方法)