0

可能重复:
仅开始一次活动

 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 部分应该工作并且值应该完全填充。

我哪里弄错了?感谢帮助。

我只是按照 Henspeide 说的做了,但它仍然强制关闭。

settings 是共享首选项对象。

设置 = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());

4

1 回答 1

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(..)
    }    
}
于 2012-04-28T10:11:38.673 回答