我有loginActivity
和MainActivity
我使用SharedPreferences
在loginActivity
的某些变量中存储了一些值。现在我想在MainActivity中使用这些值(它们是boolean
值),而无需重新打开MainActivity。我该怎么做?
另外,SharedPreferences
采用onClick
方法button
。
谢谢!
答案 0 :(得分:0)
我假设MainActivity
首先开始,而loginActivity
位于堆栈顶部。 loginActivity
完成后,您可以阅读SharedPreferences
中的MainActivity#onResume
。
如果您的意思是想要在MainActivity
中执行背景或背景中的事情,请不要这样做。不在前台的活动不应该做任何工作,实际上根本不可能存在。
答案 1 :(得分:0)
有两种方式
1.如果您在共享偏好设置中设置了值,则可以从具有相关权限的任何活动中访问它们。
2.Pass从一个活动移动到另一个活动,如果需要则关闭另一个活动。
Intent toMain = new Intent(LoginActivity.this, MainActivity.class);
toMain.putExtra("bool1", "true"); //Optional parameters
LoginActivity.this.startActivity(toMain);
//To prevent go back to login
finish();
然后从onAreate of mainActivity
Bundle fromLogin = getIntent().getExtras();
if (extras != null) {
String value = extras.getString("bool1");
//convert this to boolean
}