La técnica de pantalla en segundo plano consiste en lo siguiente: Muchos dispositivos que no poseen una gran capacidad computacional provocan un parpadeo a la hora de actualizar los gráficos en pantalla. En estos casos, lo ideal sería hacer todas las actualizaciones gráficas en memoria y posteriormente volcar el contenido de memoria en pantalla. Esta técnica es la que se conoce como double buffering. Algunos de estos dispositivos implementan esta técnica sin que tengamos que escribir ni una sola línea de código. Para saber si el MID donde ejecutamos nuestra aplicación aplica esta técnica, existe un método de la clase Canvas que nos devuelve true o false en caso de que
aplique esta técnica o no: boolean isDoubleBuffered().
Image displaysecundario;
if (! isDoubleBuffered()){
displaysecundario= Image.createImage(getWidth(),getHeight());
}
protected void paint(Graphics g){
Graphics displayprimario = g;
g = displaysecundario.getGraphics();
// Realizamos todas las operaciones para actualizar la pantalla en g.
...
//Realizamos el volcado en pantalla
displayprimario.drawImage(displaysecundario,0,0,Graphics.LEFT | Graphics.TOP);
}
No hay comentarios:
Publicar un comentario