-2

I am programming a small app with a multi language feature.

But when I'm going to check the default language, it wont work. Does anyone know why?

Code:

String Lang = Locale.getDefault().getLanguage();
    if(Lang == "de") {
        Log.i("de", "de");
    }
    else if(Lang == "fr") {
        Log.i("fr", "fr");
    }
    else {
        Log.i("en", "en");
    }
KainAlive
  • 63
  • 1
  • 6

3 Answers3

3
if(Locale.getDefault()==Locale.GERMANY) {
    Log.i("de", "de");
}
else if(Locale.getDefault()==Locale.FRENCH) {
    Log.i("fr", "fr");
}
else {
    Log.i("en", "en");
}
PRATEEK BHARDWAJ
  • 2,364
  • 2
  • 21
  • 35
1
String lang = Locale.getDefault().getLanguage();
if(lang.equals("de")) {
    Log.i("de", "de");
} else if(lang.equals("fr")) {
    Log.i("fr", "fr");
} else {
    Log.i("en", "en");
}
vm345
  • 813
  • 12
  • 28
0

first you're must compare string using equals method , but in your case I will use different approach

Locale local = Locale.getDefault();
if (locale.getLanguage().equals(new Locale("de").getLanguage())){ 
   Log.i("de", "de");
}
else if (locale.getLanguage().equals(new Locale("fr").getLanguage())){ 
   Log.i("fr", "fr");
}
else { 
   Log.i("en", "en");
}

checkout this

Ali Faris
  • 17,754
  • 10
  • 45
  • 70