如何在Android上启动一次活动?

时间:2012-04-28 10:01:15

标签: android android-intent sharedpreferences

  

可能重复:
  Start activity only once

 Intent intent = new Intent(getApplicationContext(), deneme.class);


  @Override
  public void onCreate(Bundle savedInstanceState)
    {

      super.onCreate(savedInstanceState);

      if(!settings.getString(Constants.NAME, "").equals("") && !settings.getString(Constants.SURNAME,  "").equals("")  
            && !settings.getString(Constants.NUMBER, "").equals("")) {

        startActivity(intent);

    }
      //settings is my shared preferences object 

    else{   
     setContentView(R.layout.information_form_layout);

    // this part creates a shared preferences and save the values for the first time

如果使用共享首选项保存的值不为空,我想启动其他活动。如果此人第一次启动活动,则else部分应该起作用,并且应该完全填充值。

哪里弄错了?谢谢你的帮助。

我就像亨斯佩德所说的那样,但仍然迫使其关闭。

设置是共享首选项对象。

settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());

1 个答案:

答案 0 :(得分:1)

在super.onCreate(..)之后立即调用setContentView(..):

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.first_time_startup_activity);

    if (..do settings checks here...){
        startActivity(..)
    }    
}