2016-09-06 198 views
-1

请帮助我,因为我是本地化新手。作为设备语言更改更改应用程序语言

我想更改我的应用程序语言作为设备语言更改...例如。如果设备语言设置为印地文我的应用程序也应该像facebook一样变化....

为此我该怎么办?为所有可能性创建string.xml?或者有没有图书馆?我要求的简化,如果有的话......

嗯,我知道这个代码是用来设置本地

Locale locale = new Locale("pt_PT"); 
Locale.setDefault(locale); 
Configuration config = new Configuration(); 
config.locale = locale; 
getApplicationContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics()); 

,但我无法理解如何满足所有语言support.please帮助我....

+0

为'string.xml'创建不同的'values'文件夹。 – Piyush

回答

2
  1. 在默认的values目录下创建一个名为values-<desired-locale>的目录。例如:values-de for德语,values-es西班牙语。
  2. 在该目录内创建一个strings.xml文件,并使用默认文本strings.xml中的文本翻译填充该文件。
  3. Voila!系统将根据设备区域设置使用正确的strings.xml
+0

我知道它可以通过创造价值来实现....但我想支持所有可能的语言...以满足n设备要求..我该怎么做....有没有任何简单的方法? –

+0

@HRaval你想支持所有语言?那么,你需要先*知道*所有语言。操作系统不会为你翻译:) – Sweeper

+0

我只是要求任何简单的方法,如果有的话......我知道操作系统的人不在这里做我的工作....我想我的应用程序对语言变化作出反应像fb –

0

只是创造价值的文件夹类似下面

1 Afrikanns 
Code: af. Folder name: values-af 


2 Arabic 
Code: ar. Folder name: values-ar 

3 Bengali 
Code: bn. Folder name: values-bn 

4 Czech 
Code: cs. Folder name: values-cs 

5 Chinese 
Code: zh. Folder name: values-zh 

6 German 
Code: de. Folder name: values-de 

7 French 
Code: fr. Folder name: values-fr 

8 Japanese 
Code: ja. Folder name: values-ja 

添加的所有字符串值,当手机语言会改变你的应用程序needs.sysytem将自动更改语言。