我正在开发card game
。在游戏的main class
中称为" Mesa"它触发游戏的主循环我想要Toast一些消息,看看它是否有效,如果运行的话我想要做的下一步是为这个游戏构建用户界面。
我要显示的所有这些消息都是Logged sing Log.d(...,...),它运行正常。我遇到的问题是,当尝试Toast
这些消息时,屏幕似乎变黑了。
这是我的class
Toast
消息:
public class ToastMsg
{
Context ctx;
public ToastMsg (Context context)
{
this.ctx = context;
}
public void makeText(final String text)
{
Handler handler = new Handler();
handler.post(new Runnable() {
public void run() {
Toast toast = Toast.makeText(ctx, text, Toast.LENGTH_SHORT);
toast.show();
}
});
}
}
以下是来自onCreate
的{{1}}方法,其中我创建了一个新的" Mesa"
Principal.class
在logCat中我收到错误:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_principal);
mesa = new Mesa(Principal.this, 3, 1, 3);
mesa.añadirJugador(new JugadorBot("Jose"));
mesa.añadirJugador(new JugadorBot("Hasan"));
mesa.añadirJugador(new JugadorBot("Abdul"));
runOnUiThread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
try {
mesa.empezarPartida();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
Log.d("ERROR", e.getMessage());
}
}
});
}
编辑:
例如,当使用Toastmessage方法时(例如,这是一个代表甲板的类的方法)
06-21 11:55:05.558: W/ActivityManager(1273): Launch timeout has expired, giving up wake lock!
06-21 11:55:05.848: E/WindowManager(1273): Starting window AppWindowToken{b3307548 token=Token{b333f7a8 ActivityRecord{b3398748 u0 com.games.sardineta/.Principal t3}}} timed out
编辑2:
public void repartir (int cartas, Jugada jugada)
{
/* Métedo que recibe el número de cartas a repartir
* y los jugadores. Reparte cartas a los jugadores
* uno a uno.
*/
ArrayList<Jugador> jugadores = jugada.mesa.jugadores;
for (int i=1; i<=cartas; i++)
{
for (Jugador jugador : jugadores)
{
try
{
Carta carta = baraja.get(0);
jugador.getMano().add(carta);
baraja.remove(0);
Log.d("DEBUG", jugador.getNombre() + " recibe " + carta.toString());
jugada.mesa.toast.makeText(jugador.getNombre() + " recibe " + carta.toString());
sleep(1000);
}
catch (NullPointerException npe)
{
throw new Error ("Baraja vacía.");
}
}
}
}
有什么想法吗? 一些帮助将是欣赏。