采用文本图片填充画笔

public class CircleView2 extends ImageView {public CircleView2(Context context) {super(context);inti();}public CircleView2(Context context, AttributeSet attrs) {super(context, attrs);inti();}public CircleView2(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);inti();}Paint paint;Path path;private void inti() {paint = new Paint();//画笔粗细paint.setStrokeWidth(100);paint.setStyle(Style.STROKE);//边角圆形paint.setStrokeCap(Cap.ROUND);paint.setStrokeJoin(Join.ROUND);//为画笔填充文本setShade();path = new Path();}private void setShade() {Paint paint2 = new Paint();paint2.setTextSize(120);paint2.setColor(Color.WHITE);String text = "壹佰万";Rect rect = new Rect();//获取文本大小paint2.getTextBounds(text, 0, text.length(), rect);//创建略大于文本的bitmap作为画布Bitmap bitmap = Bitmap.createBitmap(rect.width() + 20, rect.height() + 20, Config.ARGB_8888);//在bitmap上作画Canvas canvas = new Canvas(bitmap);//在bitmap上绘制文本canvas.drawText(text, 0, rect.height(), paint2);//为画笔设置填充图片paint.setShader(new BitmapShader(bitmap, TileMode.REPEAT, TileMode.REPEAT));}@Overridepublic boolean onTouchEvent(MotionEvent event) {// TODO Auto-generated method stubswitch (event.getAction()) {case MotionEvent.ACTION_DOWN:path.moveTo(event.getX(), event.getY());break;case MotionEvent.ACTION_MOVE:path.lineTo(event.getX(), event.getY());invalidate();break;}return true;}@Overrideprotected void onDraw(Canvas canvas) {canvas.drawPath(path, paint);}}


更多相关文章

  1. 关于android实现fastindexbar(快速索引)详解
  2. 捕获Android文本输入框的软键盘完成(Done)按键消息
  3. Android开发EditText属性
  4. NestedScrollView中添加一个android:fillViewport="true"
  5. android textview属性
  6. 转:Android(安卓)学习笔记3(控件)
  7. Android下载网络文本
  8. Android(安卓)中文 API (22) ―― MultiAutoCompleteTextView
  9. EditText所有属性详解

随机推荐

  1. 如何将这两个查询组合成1?
  2. 如何在一个查询中组合六个独立查询。表是
  3. mysql主从简单配置
  4. 从SQL字符串分割多桩分隔符
  5. 【转载】怎样把Oracle的数据导入到SQLSer
  6. sql2000在还原备份时,我发现我新的备份,
  7. mysql 压缩解压版 zip 安装 详细步骤 教
  8. mysql无法登陆修复
  9. SQL主键的外键问题
  10. Amoeba实现mysql主从读写分离1