Tema: [ CONSULTA ] Problema con SurfaceView
Ver Mensaje Individual
  #1  
Viejo 04/05/13, 16:39:09
Array

[xs_avatar]
user19 user19 no está en línea
Usuario novato en la web
 
Fecha de registro: nov 2010
Mensajes: 29
Tu operador: Movistar

Problema con SurfaceView

Buenas, tengo un problema que me está volviendo loco y a ver si podeis echarme una mano.

Estoy desarrollando un juego android y os cuento lo que he hecho.

Tengo una clase activity, llamada Main.java de la siguiente manera:

----Main.java ---

public class Main extends Activity {

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
---> GameView game=new GameView(this);
setContentView(game);

}
.....

}

Como veis en dicha activity no uso el layout XML sino un SurfaceView (clase GameView)

----GameView.java---

public class GameView extends SurfaceView{

....

}

Y luego tengo una clase GameLoopThread , que es de tipo hilo que es el que refresca el dibujo en la pantalla.

---GameLoopThread----

public class GameLoopThread extends Thread {

...
}

La cuestión es que el juego me funciona y hace lo que tiene que hacer, pero ocurre que cuando el personaje coge una llave cuya colisión detecto en la clase GameView, quiero iniciar una nueva activity para mostrar un menú, por lo que en esta clase GameView cuando lo detecta la llave hago los siguiente:

--dentro la clase GameView donde detecto que he cogido la llave---

gameLoopThread.setRunning(false); //paro el hilo que refresca la pantalla del juego
Intent i=new Intent(getContext(),DisplayMessageActivity.class); //donde DisplayMessageActivity es la nueva actividad
getContext().startActivity(i); //la inicio


Pero cuando pruebo el juego y cojo la llave se cierra la aplicación ((

Alguien me podría decir que hago mal o alguna idea de hacerlo de otra manera??

Muchas gracias y saludos
Responder Con Cita