2016-01-16 173 views
1

我想在我的應用程序中使用SharedPreferences保存一些值。這些值在活躍時會不斷變化(例如,每場比賽帶來一些硬幣,並且我想保存這些硬幣)。然而,我不知道用戶什麼時候會退出應用程序,以便下次保存硬幣。因此,在每一個地方的硬幣改變我的活動:在Android中共享偏好設置

@Override 
protected void onStop() { 
    super.onStop(); 
    SharedPreferences sp = getSharedPreferences("my_pref", Activity.MODE_PRIVATE); 
    SharedPreferences.Editor editor = sp.edit(); 
    editor.putInt("coins", MainActivity.COINS); 
    editor.commit(); 
} 

有沒有辦法做到這一點更好。

回答

1

使用isFinishing()中的onPause()方法,這意味着應用程序暫停,如果isFinishing()爲true,那麼你的應用程序將結束

@Override 
protected void onPause() { 
    super.onPause(); 
    if(isFinishing()) 
    { 
     //finishing logic here 
    } 
} 
+0

我應該用它在所有活動或只是一個? – Nikola

+0

是的,如果你不知道他們要退出的位置,但onFinishing()在onPause意味着他們正在定義關閉應用程序 – JRowan