我有 textView 和 ListView。我在列表视图中列出了支持语言
当我单击任何语言 Textview 文本需要更改时
Code
String lang[] = new String[]{"English","French"};
ListView listView = (ListView) findViewById(android.R.id.list);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,lang);
listView.setAdapter(adapter);
TextView text = (TextView)findViewById(R.id.textbox);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
TextView tv = (TextView)v;
String selected_lang = tv.getText().toString();
Toast.makeText(this, selected_lang, Toast.LENGTH_LONG).show();
}
笔记:
需要从一种语言翻译成另一种语言而不使用 strings.xml 和 GoogleApi
有人知道谷歌如何将一种语言翻译成另一种语言吗?
在您的目录值附近创建新目录values-fr,其中包含文件strings.xml和类似内容
<resources>
<string name="some_string_vith_localization">French translation</string>
</resources>
并在你的代码中
String lang[] = new String[]{"en","fr"};
ListView listView = (ListView) findViewById(R.id.my_list_id);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,lang);
listView.setAdapter(adapter);
TextView text = (TextView)findViewById(R.id.textbox);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
TextView tv = (TextView)view.findViewById(R.id.text_view_to_change);
String selected_lang = tv.getText().toString();
Locale locale2 = new Locale(selected_lang);
Locale.setDefault(locale2);
Configuration config2 = new Configuration();
config2.locale = locale2;
getBaseContext().getResources().updateConfiguration(config2,
getBaseContext().getResources().getDisplayMetrics());
tv.setText(getResources().getString(R.string.some_string_vith_localization));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)