Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

SurfaceView

Acho curiosa a recomendação de SurfaceView versus View comum. Enquanto que a SurfaceView oferece mais controle sobre quando desenhar, ela também acarreta muito mais trabalho e causa muito mais problemas do que usar uma View comum - sem grandes vantagens, já que ela não é acelerada por hardware.

Até o Android 2.x, SurfaceView ainda fazia bastante sentido (eu mesmo lancei vários jogos usando ela) - hoje, nem encosto (com excessão da GLSurfaceView, que ainda uso).

Que motivos alguém teria hoje para usa-la?

1 resposta
solução!

Em relação à View, a grande vantagem que a SurfaceView possui é oferecer uma thread que pode ser usada para atualizar os elementos da tela, em vez de fazer todo o processamento na UIThread. Como precisamos criar uma view constantemente atualizada, esse processamento não deve ser feito na UIThread, justificando o uso de uma SurfaceView ou GLSurfaceView.

Não optamos por usar GLSurfaceView por ser mais complicado o código para quem não está habituado com o OpenGL, mas é uma alternativa válida, só um pouco mais baixo nível.