开发者

How to set a different language to the ListContents in my ListView

开发者 https://www.devze.com 2023-04-09 13:51 出处:网络
I have two simple ListViews: public class SimpleListView extends Activity { private ListView lv1 = null;

I have two simple ListViews:

public class SimpleListView extends Activity {
private ListView lv1 = null;
priva开发者_JAVA百科te ListView lv2 = null;
private String s1[] = {"a", "b", "c", "d", "f", "g","h","i"};
private String s2[] = {"j", "k", "l", "m", "n", "o","p","q"};

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);         
    lv1 = (ListView) findViewById (R.id.list1);
    lv2 = (ListView) findViewById (R.id.list2);

    lv1.setAdapter(new ArrayAdapter<String> (this, android.R.layout.simple_list_item_1, s1));
    lv2.setAdapter(new ArrayAdapter<String> (this, android.R.layout.simple_list_item_1, s2));

}  

} 

Here I want to list-contents i.e. s1 and s2 to be of different language instead of a,b,c..

How can I do that?

Thanks

EDIT:

According to language support in android I came to know that I can set different language to the TextViews.Now I want to set the language to the list-contents.


Well if you're asking how to find out what the active language on the device is look here Get the current language in device then fill your s1 and s2 according to the language


You should use localized strings.xml files.

Your res/values folder contains a strings.xml file.

By creating additional values folders with a translated strings.xml file, you can cover all the regional languages you want.

Here are some examples:

  • res/values (for English)
  • res/values-de (for German)
  • res/values-zh (for Chinese)
  • res/values-es (for Spanish)
  • res/values-no (for Norwegian)
  • res/values-da (for Danish)

All the folder must contain a strings.xml file with the translated strings. If your original strings.xml file looks like this:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">English title</string>
</resources>

... then it could be like this for the German version:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">German title</string>
</resources>

Using string resources

If you want to get a string from the strings resources, then here's how you do.

In code: getString(R.strings.app_name) // returns "English title" for English users, "German title" for German users, etc.

In layout: @string/app_name

More info

The Android developer site has an excellent guide on the subject here:

http://developer.android.com/guide/topics/resources/localization.html

0

精彩评论

暂无评论...
验证码 换一张
取 消