android应用程序语言更改

时间:2011-03-07 08:53:44

标签: android

我正在开发一个Android应用程序,

在该应用程序中,我需要使用5种语言,

应用程序允许用户选择不同的语言。根据用户选择语言

为此我必须做什么?

给我任何建议......

4 个答案:

答案 0 :(得分:1)

这很容易做到......例如使用微调器来选择语言。请参阅以下代码...

public void onCreate(Bundle savedInstanceState) {

    mTts = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
}
            public void onInit(int status) {
                if (status != TextToSpeech.ERROR) {
                    ttsIsInit = true;
                }
            }
        });


read.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                if (mTts != null && ttsIsInit) {
                    mTts.speak(exitTextFound, TextToSpeech.QUEUE_FLUSH, null);
                }
            }
        });


public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,long arg3) {

        language = language_array[spinner.getSelectedItemPosition()];

        if (language.equals("English US")) {
            mTts.setLanguage(Locale.US);
        } else if (language.equals("Francais")) {
            mTts.setLanguage(Locale.FRANCE);
        } else if (language.equals("Espanol")) {
            mTts.setLanguage(new Locale("es"));
        }
    }

答案 1 :(得分:0)

我认为您应该在应用中使用菜单来更改(即选择)语言。

单击该菜单按钮,您可以更改该特定语言的相应strings.xml。

为此,请参阅我对thread的回答。我认为菜单是最好的选择。

答案 2 :(得分:0)

您可以提供本地化。请参阅site

答案 3 :(得分:0)

我遇到了同样的问题:我需要将我的语言设置为我的应用程序中选择的语言。

我的解决方法是:

  1. 将您的字符串保存在XML文件中,不要将其提取到资源
  2. 制作XML的精确副本,并将其重命名为_languagecode,如 _fr(使用小写!)
  3. 将您的翻译修复为XML副本
  4. 在代码中,您可以检查应用级语言并夸大相关内容 XML
  5. 示例:

     String languageInitials = MyAppconfig.currentLanguageInitials();
            if (languageInitials.equals("NL")) {
                view = inflater.inflate(R.layout.mylayout_nl, container, false);
            } else {
                view = inflater.inflate(R.layout.fragment_mylayout_fr, container, false);
            }
    

    从这些XML中,您仍然可以将所需的字符串提取到资源。