SharedPreferences sharedPreferences;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.main_menu, menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
super.onOptionsItemSelected(item);
switch (item.getItemId()) {
case R.id.english:
setLanguage("English");
return true;
case R.id.german:
setLanguage("German");
return true;
default:
return false;
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sharedPreferences = this.getSharedPreferences("package com.darrenmleith.alertdemo", Context.MODE_PRIVATE);
String language = sharedPreferences.getString("language", "");
Log.i("saved language", language);
if (language.equals("")) {
new AlertDialog.Builder(this)
.setIcon(android.R.drawable.ic_btn_speak_now)
.setTitle("Choose a Language")
.setMessage("Please choose preferred language")
.setPositiveButton("English", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
setLanguage("English");
}
})
.setNegativeButton("German", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
setLanguage("German");
}
})
.show();
}
}
public void setLanguage(String language) {
sharedPreferences.edit().putString("language", language).apply();
Toast.makeText(getApplicationContext(), "Language set to " + language, Toast.LENGTH_SHORT).show();
}