Exemplo n.º 1
0
 /**
  * 具体的画法
  *
  * @param paint
  * @param canvas
  */
 private void draw(Paint paint, Canvas canvas) {
   // 外形不为空画外形
   if (null != info.getsShapId()) {
     if (imageItem == null) {
       imageItem = new ImageDrawItem(info.getsShapId(), mRect);
     }
     imageItem.draw(paint, canvas);
   }
   // 画静态文本
   drawTextValue(paint, canvas);
   // 画点击输入背景提示框
   if (drawBack) {
     if (bgBitmap == null) {
       bgBitmap = ImageFileTool.getBitmap(R.drawable.rect_red_bg, mContext);
       bgRect = new Rect(0, 0, bgBitmap.getWidth(), bgBitmap.getHeight());
     }
     if (bgBitmap != null) {
       canvas.setDrawFilter(
           new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG | Paint.FILTER_BITMAP_FLAG));
       if (mBitmapPaint == null) {
         mBitmapPaint = new Paint();
         mBitmapPaint.setDither(true);
         mBitmapPaint.setAntiAlias(true);
       }
       canvas.drawBitmap(bgBitmap, bgRect, mRect, mBitmapPaint);
     }
   }
   // 不可触控加上锁图标
   if (!isTouchFlag && SystemInfo.isbLockIcon()) {
     if (mLockBitmap == null) {
       mLockBitmap = ImageFileTool.getBitmap(R.drawable.lock, mContext);
     }
     if (mLockBitmap != null) {
       if (mBitmapPaint == null) {
         mBitmapPaint = new Paint();
         mBitmapPaint.setDither(true);
         mBitmapPaint.setAntiAlias(true);
       }
       canvas.drawBitmap(mLockBitmap, info.getnStartX(), info.getnStartY(), mBitmapPaint);
     }
   }
 }