1

我遇到了我刚刚制作的游戏存在的问题。直到我开展另一项活动并将其打开后,我才了解Android生命周期。当我回到我以前的活动时,游戏的状态回到默认状态。当按下返回或另一个活动处于活动状态时,是否有办法暂停整个活动本身?

我搜索有关如何处理它,但我还是搞不清我应该在onPause(),等的onResume

谁能给我如何保存一个想法/恢复当前的每一个方法中插入代码是什么gridview的状态?就像每个单元格(地雷,标志,按下按钮)的位置一样。 我不知道如何实现(游戏是扫雷)。

如果可能,是否有办法暂停/恢复整个活动本身?嘿嘿对不起我在Android新..我只是想保存播放器的进度。

回答

0

呼叫您的活动这些功能要保存和检索状态,这些功能不是对活动的状态变化自动调用回调方法:

您可以保存这些变量在以下功能:

@Override 
public void onSaveInstanceState(Bundle savedInstanceState) { 
    super.onSaveInstanceState(savedInstanceState); 
    // Save UI state changes to the savedInstanceState. 
    // This bundle will be passed to onCreate if the process is killed and restarted. 
    savedInstanceState.putBoolean("MyBoolean", true); 
    savedInstanceState.putDouble("myDouble", 1.9); 
    savedInstanceState.putInt("MyInt", 1); 
    savedInstanceState.putString("MyString", "Welcome back to Android"); 
    // etc. 
} 

您可以检索此功能中保存的变量:

@Override 
public void onRestoreInstanceState(Bundle savedInstanceState) { 
    super.onRestoreInstanceState(savedInstanceState); 
    // Restore UI state from the savedInstanceState. 
    // This bundle has also been passed to onCreate. 
    boolean myBoolean = savedInstanceState.getBoolean("MyBoolean"); 
    double myDouble = savedInstanceState.getDouble("myDouble"); 
    int myInt = savedInstanceState.getInt("MyInt"); 
    String myString = savedInstanceState.getString("MyString"); 
} 
相关问题