Android在登录和MainActivity之间切换
我有两项活动。 主要活动Android在登录和MainActivity之间切换,android,Android,我有两项活动。 主要活动 public class MainActivity extends SherlockFragmentActivity{ private SharedPreferences settings; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); settings = g
public class MainActivity extends SherlockFragmentActivity{
private SharedPreferences settings;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
settings = getPreferences(0);
if (settings.getBoolean("firstStart", true)) {
Intent i = new Intent(getApplicationContext(), LoginActivity.class);
startActivity(i);
finish();
}
}
}
仅在应用程序第一次启动时调用的LoginActivity。它调用saveClass()方法:
现在的问题是:
始终启动LoginActivity。所以我猜一些带有偏好的东西不太好用。
我做错了什么,或者我必须做什么才能让代码正常工作?不要使用
getPreferences
尝试使用
PreferenceManager.getDefaultSharedPreferences(context);
由于您正在提交更改,首选项保存看起来很好,那么启动活动的逻辑如何?能否发布getPreferences(0)的代码;也许有问题。我不知道。我认为这应该正常工作,但看起来
settings.getBoolean(“firstStart”,true)
总是返回true。只有当条目firstStart
不在preferences中时,才应该使用此选项,而不是使用getPreferences尝试使用PreferenceManager.GetDefaultSharedReferences(上下文)代码>@StefanBeike
PreferenceManager.getDefaultSharedPreferences(context);