Issue
For e.g there is app which provides multi-language support, in my activity/UI, I call getResources().getString(R.string.hello)
which exist in strings.xml,such that
values\strings.xml
values-ru\strings.xml
Now when calling getResources().getString(R.string.hello)
and need to access string based on system locale, so will one get strings from values\strings.xml
OR values-ru\strings.xml
?
OR
does one need to change my app locale based on system locale (keep app locale same as system locale) and then retrieve the value from getString()
, something suggested in below links
I have searched various other links, but not able to find the solution
Solution
MyProject/
res/
values/
strings.xml
values-es/
strings.xml
values-fr/
strings.xml
Add the string values for each locale into the appropriate file.
At runtime, the Android system uses the appropriate set of string resources based on the locale currently set for the user's device.
For info on Localizing with Resources
http://developer.android.com/guide/topics/resources/localization.html
More info @
http://developer.android.com/training/basics/supporting-devices/languages.html
Also check the below link
86 @Override
87 public Resources getResources()
88 {
89 return mBase.getResources();
90 }
Return a Resources instance for your application's package.
332
333 public final String getString(int resId) {
334 return getResources().getString(resId);
335 }
Return a localized string from the application's package's default string table. Parameters: resId Resource id for the string
Answered By - Raghunandan
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.