title: Android, fastest way to draw a bitmap to canvas
body: <p>Just wondering what the fastest way is to draw a bitmap to canvas?</p>
  
  <p>Currently I have a bitmap (and canvas for drawing) which i use to double buffer drawing calls, and then when i draw to canvas have a scrolling effect by applying a 1px canvas translation. This alone will reduce the framerate from 60+ FPS to ~40, quite a hit. Im not using surfaceView (or GLSurfaceView) at the moment but just wondering if im missing anything that would improve the speed. onDraw() code below</p>
  
  <pre><code>@Override
      public void onDraw(Canvas canvas)
      {
          //update fps text
          mFpsTracker.frameTouch();
  
          if(mBufferedBitmap == null)
          {
              mBufferedBitmap = Bitmap.createBitmap(getWidth(), getHeight(), Bitmap.Config.ARGB_4444);
              mBufferedCanvas = new Canvas(mBufferedBitmap);
          }
  
          paint.setColor(Color.BLUE);
          mBufferedCanvas.drawLine(0, getHeight(), getWidth(), getHeight(), paint);
          mBufferedCanvas.translate(0, -1);
  
  
      canvas.drawBitmap(mBufferedBitmap, 0, 0, null); 
  
      //draw fps
      mTextPaint.setColor(Color.WHITE);
      canvas.drawText(mFpsTracker.getFPSString(), 40, 40, mTextPaint);
  
  
      invalidate();       
  }
  </code></pre>