0
我只想在第一次運行時開始活動。所以在我運行它之後,它永遠不會再打開。此活動添加了僅通過第一次啓動運行活動
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
所以此活動首先啓動。 我有一個變量可以幫助我決定這個活動是否第一次啓動(即使用名爲sem_first_time的SharedPreferences保存它)。如果它是0,那麼它是第一次,如果不是,則該活動必須完成並且開始另一個。 這裏是我的代碼
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SharedPreferences data = getSharedPreferences("datas",Context.MODE_PRIVATE);
SharedPreferences.Editor editor = data.edit();
first_start = data.getInt("fstart", 0);
if (first_start == 1)
{
finish();
Intent start = new Intent(this, Main.class);
startActivity(start);
}
setContentView(R.layout.first_start);
我有一個按鈕,first_start設置爲1
public void create (View view)
{
SharedPreferences data = getSharedPreferences("datas",Context.MODE_PRIVATE);
SharedPreferences.Editor editor = data.edit();
first_start = 1;
editor.putInt("fstart", first_start);
...
}
但是,當我開始這個程序一旦它再次顯示該活動...什麼是錯的?
瞭解活動的生命週期:http://developer.android.com/training/basics/activity-lifecycle/starting.html – 2014-08-29 21:16:45
之後你犯放在'SharedPreferences'價值? editor.commit(); – 2014-08-29 21:18:51
就是這樣!謝謝:) – user3339279 2014-08-29 21:20:32