2012-12-06 23 views
1

新實例,我是相當新到Android,但我注意到,幾乎每一個補習始於此:創建上推出

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

但我不希望國家在整個重新發動持續應用程序。我希望用戶從頭開始,如果他們重新啓動應用程序。我怎樣才能做到這一點?

+0

從一開始就指什麼? – kosa

+0

我不希望用戶在他們離開應用程序時離開的地方。 – Fibericon

+0

你有沒有試過通過null?我從來沒有嘗試過,但我會試一試。 – kosa

回答

1

在Android中,狀態管理在活動生命週期中由您決定。 onCreate,onPause,onDestroy和其他生命週期方法都可用於保存和恢復活動狀態並執行其他操作。如果你不希望你的應用程序保存任何狀態,無論是文本框還是動畫,或者什麼不是,那麼都不會捕獲它並在這些事件中恢復它。

Bundle savedInstanceState僅在您暫停或停止活動時由您設置,允許您存儲狀態並將其保存在onCreate或onResume方法中,但這種情況也會發生在佈局的方向更改上(用戶提示從縱向到風景),然後你可能想要保存該Bundle中的狀態細節。

當然,你總是可以重置任何字段覆蓋onResume。

此外,Activity Launch Modes可能值得一看。很多時候,我會將我的主要活動設置爲singleTop,以便在任何給定時間只啓動一個實例。

0
protected void onPause() 
    { 
    finish(); 
    } 

它會在暫停時終止活動,每次都會創建一個新實例。