您的位置:首页 > 移动开发 > Android开发

给TextView加背景

2016-03-27 17:29 441 查看
        前几天,公司项目中,有一个界面,文字背景中2个圆圈,一大一小。也是因为一直以来,比较头疼自定义控件,所以就趁着周末。就用自定义控件的方式,又做了一次。比较简单。直接上代码:

@Override
protected void onDraw(Canvas canvas) {

//通过比较高度和宽度取最大值作为直径
int radius = Math.max(mWidth, mHeight);
//构建一个和目标相同大小的bitmap对象
Bitmap bitmap = Bitmap.createBitmap(radius, radius, Bitmap.Config.ARGB_8888);
//通过提供的canvas绘制一个bitmap
canvas.drawBitmap(bitmap, 0, 0, null);
//根据提供的bitmap,构建一个canvas对象
Canvas canvas1 = new Canvas(bitmap);
//绘制外面的圆,注意半径要减去自身的边框宽度
canvas1.drawCircle(radius/2,radius/2,(radius-18)/2,paint1);
//绘制内部的圆
canvas1.drawCircle(radius/2, radius/2, (radius - 60) / 2, paint2);
//回调父类方法绘制文字
super.onDraw(canvas);

}


         最关键的代码,就是上面这一段。

         源码下载~

        不知道下载的对不对,每次上传的资源都找不到了,如果不对,麻烦通知一声,谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android