Example #1
0
 public override int getOpacity()
 {
     if (mShapeState.mShape == null)
     {
         android.graphics.Paint p = mShapeState.mPaint;
         if (p.getXfermode() == null)
         {
             int alpha = p.getAlpha();
             if (alpha == 0)
             {
                 return(android.graphics.PixelFormat.TRANSPARENT);
             }
             if (alpha == 255)
             {
                 return(android.graphics.PixelFormat.OPAQUE);
             }
         }
     }
     // not sure, so be safe
     return(android.graphics.PixelFormat.TRANSLUCENT);
 }
Example #2
0
        public override void draw(android.graphics.Canvas canvas)
        {
            android.graphics.Rect  r     = getBounds();
            android.graphics.Paint paint = mShapeState.mPaint;
            int prevAlpha = paint.getAlpha();

            paint.setAlpha(modulateAlpha(prevAlpha, mShapeState.mAlpha));
            if (mShapeState.mShape != null)
            {
                // need the save both for the translate, and for the (unknown) Shape
                int count = canvas.save();
                canvas.translate(r.left, r.top);
                onDraw(mShapeState.mShape, canvas, paint);
                canvas.restoreToCount(count);
            }
            else
            {
                canvas.drawRect(r, paint);
            }
            // restore
            paint.setAlpha(prevAlpha);
        }
Example #3
0
 public override int getOpacity()
 {
     return(mNinePatch.hasAlpha() || (mPaint != null && mPaint.getAlpha() < 255) ? android.graphics.PixelFormat
            .TRANSLUCENT : android.graphics.PixelFormat.OPAQUE);
 }