Andriod高级开发工程师-UI绘制流程(Draw流程)

150
    /*
     * Draw traversal performs several drawing steps which must be executed
     * in the appropriate order:
     *
     *      1. Draw the background
     *      2. If necessary, save the canvas' layers to prepare for fading
     *      3. Draw view's content
     *      4. Draw children
     *      5. If necessary, draw the fading edges and restore layers
     *      6. Draw decorations (scrollbars for instance)
     */

ViewGroup draw()

  • 绘制背景 drawBackground(canvas)

  • 绘制自己onDraw(canvas)

  • 绘制子View dispatchDraw(canvas)

  • 绘制前景,滚动条等装饰onDrawForeground(canvas)

View draw()

  • 绘制背景 drawBackground(canvas)

  • 绘制自己onDraw(canvas)

  • 绘制前景,滚动条等装饰onDrawForeground(canvas)