Java 使用文本、图像和声音对ListView进行排序

Java 使用文本、图像和声音对ListView进行排序,java,android,listview,Java,Android,Listview,我有一个包含文本、图像和声音的列表视图。我对文本使用了字符串数组。图像和声音使用int数组 int[] = {R.drawable.a1, R.drawable.a2, R.drawable.a3, ...} 当我更改应用程序的语言时,文本列表的顺序会更改,但图像和音频不会更改 如何将图像列表附加到这样的文本列表?“usa”=“01.jpg”、“Japan”=“02.jpg”等。创建一个数据类,将相关数据存储在一起: public class Language { public La

我有一个包含文本、图像和声音的
列表视图。我对文本使用了字符串数组。图像和声音使用int数组

int[] = {R.drawable.a1, R.drawable.a2, R.drawable.a3, ...}
当我更改应用程序的语言时,文本列表的顺序会更改,但图像和音频不会更改


如何将图像列表附加到这样的文本列表?“usa”=“01.jpg”、“Japan”=“02.jpg”等。创建一个数据类,将相关数据存储在一起:

public class Language {

    public Language(String name, int image, int sound){
        this.name = name;
        this.image = image;
        this.sound = sound;
    }

    private final String name;
    private final int image;
    private final int sound;

    public String getName() {
        return name;
    }

    public int getImage() {
        return image;
    }

    public int getSound() {
        return sound;
    }
}
然后将您的项目添加到
列表中

List<Language> languages = new ArrayList<Language>();
languages.add(new Language("USA", R.drawable.a1, R.raw.s1));
languages.add(new Language("Japan", R.drawable.a2, R.raw.s2));
List languages=new ArrayList();
添加(新语言(“美国”,R.drawable.a1,R.raw.s1));
添加(新语言(“日本”,R.drawable.a2,R.raw.s2));

最后在
列表视图中使用生成的
列表

您的字符串数组是一组预定义的字符串吗?共享您的列表视图class@Abubakar是文本的字符串数组。这就是我的代码(老问题)“然后将您的项目添加到列表”的方式。。。什么样的名单?数组列表?简单列表?对不起,我对安卓系统还不熟悉。如何做到这一点,请?谢谢你的帮助,但我需要一个替代方法(即使这是正确的)。我已经完成了适配器和Listview(从教程中),我不想从头重写所有代码,因为这对我来说很困难。@RonnyWestwood对您来说更容易,但在大多数情况下使用静态数组不是合适的方法,如果我坚持,但使用map不能做任何事情,祝您好运?这是我关于代码@RonnyWestwood的前一个问题,如果你不想更改任何代码,你永远无法完成任务,以有效的方式更改适配器代码,忘记那个教程