2013-12-20 45 views
0

我正在为Android做一个简单的游戏,基本上玩家做出了一个动作,计算机又回来了,游戏检查每次回合后是否有赢家。现在发生的事情是,当有赢家时,它会刷新并返回到一个清晰的董事会。我希望它暂停几秒钟以让用户在移动后看到游戏结果,但是,每次使用Thread.sleep(3000)时,它都会在菜单中暂停(也就是说,您可以点击移动并且菜单保持3秒钟,然后执行此操作),而不是显示游戏并暂停,以便用户可以在刷新之前查看发生的情况。安卓在菜单项目选择后添加延迟

下面是我的一些代码片段:

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.moves, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 

    String move = item.getTitle().toString(); 
    if(item.getTitle().toString().equals("Quit")){ 
     finish(); 
    } 

    //Handle all other moves 
    if(isWinner()) 
     refreshBoard(); 
     //Here is where I want to pause for a bit 
} 

回答

0

您是否尝试过在另一个线程使用Thread.sleep

new Thread(new Runnable() { 
    public void run(){ 
     try{ 
      Thread.sleep(1000); 
     } 
     catch(Exception e){ 
      // do nothing 
     } 
    } 
}).start();