Java ArrayList<;文件>;()作为纺纱工

Java ArrayList<;文件>;()作为纺纱工,java,android,Java,Android,我有一个要显示为微调器的ArrayList()。问题是,我需要显示文件.toString()以外的内容。我想将微调器的视图文本设置为文件名(格式化),而不是file.toString()返回的完整文件路径,因此我认为这排除了仅使用ArrayAdapter的可能性?谢谢 Android SDK文档推荐以下内容: 重写对象的toString()方法,以确定将为列表中的项目显示哪些文本 这意味着您仍然可以使用ArrayAdapter,但您需要创建一个包含真实文件的包装器对象,例如FileFormat,

我有一个要显示为微调器的ArrayList()。问题是,我需要显示文件.toString()以外的内容。我想将微调器的视图文本设置为文件名(格式化),而不是file.toString()返回的完整文件路径,因此我认为这排除了仅使用ArrayAdapter的可能性?谢谢

Android SDK文档推荐以下内容:

重写对象的toString()方法,以确定将为列表中的项目显示哪些文本

这意味着您仍然可以使用
ArrayAdapter
,但您需要创建一个包含真实文件的包装器对象,例如
FileFormat
,它将用所需格式覆盖
toString()

class FileFormat {
    private File delegate;
    FileFormat (File delegate) {
       this.delegate = delegate;
    }
    public String toString() {
       return formatAllPrettyAndWhatNot (delegate);
    }
};
//then use a ArrayList<FileFormat>(), in your array spinner adapter 
类文件格式{
私人文件委托;
文件格式(文件委托){
this.delegate=委托;
}
公共字符串toString(){
返回格式AllPrettyAndWhatnot(委托);
}
};
//然后在数组微调器适配器中使用ArrayList()