code: public void drawHeader(RecyclerView recyclerView, Canvas canvas, View header, Rect offset) {
      canvas.save();
  
      if (recyclerView.getLayoutManager().getClipToPadding()) {
        // Clip drawing of headers to the padding of the RecyclerView. Avoids drawing in the padding
        initClipRectForHeader(mTempRect, recyclerView, header);
        canvas.clipRect(mTempRect);
      }
  
      canvas.translate(offset.left, offset.top);
  
      header.draw(canvas);
      canvas.restore();
    }
docs: Draws a header to a canvas, offsetting by some x and y amount
  
  @param recyclerView the parent recycler view for drawing the header into
  @param canvas       the canvas on which to draw the header
  @param header       the view to draw as the header
  @param offset       a Rect used to define the x/y offset of the header. Specify x/y offset by setting
  the {@link Rect#left} and {@link Rect#top} properties, respectively.