It's important to understand the basic concept of the surface view before using:
- It's basically just a hole in the current window
- Native UI can be placed on top of it
- Drawing is done using a dedicated, non UI thread
- Drawing is not hardware accelerated
- Uses two buffers: One is currently shown, one is used for drawing.
unlockCanvasAndPost() swaps the buffers.
Deadlocks can easily occur if the
unlockCanvasAndPost() methods are not called in the correct order.
SurfaceView with drawing thread
This modified text is an extract of the original Stack Overflow Documentation created by following contributors
and released under CC BY-SA 3.0