package com.wheel;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.util.AttributeSet;
import android.widget.Button;
import com.jmheart.R;
public class ImageTextButton extends Button
{
private final String namespace = "http://www.javaeye.com/custom";
private int resourceId = 0;
private Bitmap bitmap;
public ImageTextButton(Context context, AttributeSet attrs)
{
super(context, attrs);
setClickable(true);
// Ĭ��ʹ��R.drawable.icon����ͼƬ��ͨ��icon�����������ȡͼƬ
resourceId = attrs.getAttributeResourceValue(namespace, "icon",R.drawable.ic_launcher);
bitmap = BitmapFactory.decodeResource(getResources(), resourceId);
this.setTextSize(12);
}
@Override
protected void onDraw(Canvas canvas)
{
// ͼƬ����������ʾ
int x = (this.getMeasuredWidth() - bitmap.getWidth()) >> 1;
int y = 0;
canvas.drawBitmap(bitmap, x, y, null);
// ������Ҫת������ΪĬ�������Button�е����־�����ʾ
// ������Ҫ�������ڵײ���ʾ
canvas.translate(0,(this.getMeasuredHeight() >> 1) - (int) this.getTextSize());
super.onDraw(canvas);
}
public void setIcon(Bitmap bitmap)
{
this.bitmap = bitmap;
invalidate();
}
public void setIcon(int resourceId)
{
this.bitmap = BitmapFactory.decodeResource(getResources(), resourceId);
invalidate();
}
}