【发布时间】:2021-09-25 08:26:04
【问题描述】:
我有一个问题,当我调用保存的共享 sharedPreferences 整数值时 在第二个活动中它的返回值 0 !!!
这是第一个活动中的代码(保存)
public void startClick(View view) {
Toast.makeText(this,String.valueOf(l),Toast.LENGTH_SHORT).show();
if (language == 1 && isCountrySelected==true ) {
//Saving Value
SharedPreferences sharedPreferences = getSharedPreferences("indemnity_calculation_kuwait",MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putInt("languageValue", l).apply();
editor.commit();
startActivity(intentKuwaitAr);
finish();
// openArabicActivity();
// finish();
}
在第二个活动“闪屏”中,我试图调用保存的值
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash_screen);
intentKuwaitEn = new Intent(this ,MainActivity.class) ;
intentKuwaitAr = new Intent(this,ArabicActivity.class) ;
intentMenu = new Intent(this,MenuActivity.class) ;
// Toast.makeText(this,"l="+String.valueOf(savedValue),Toast.LENGTH_SHORT).show();
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
int savedValue = sharedPreferences.getInt("languageValue", 0);
Toast.makeText(this,"l="+String.valueOf(savedValue),Toast.LENGTH_SHORT).show();
Thread myThread= new Thread(){
@Override
public void run() {
try {
sleep(3000);
if (savedValue==0){startActivity(intentMenu); finish();}
if (savedValue== 1){startActivity(intentKuwaitAr); finish();}
if (savedValue ==2){startActivity(intentKuwaitEn); finish();}
finish();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
myThread.start();
}
【问题讨论】:
-
请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。
标签: java android sharedpreferences