1
我有一个ArrayList(),我想要显示为一个微调。问题是,我需要显示除File.toString()以外的内容。我想将Spinner的视图文本设置为文件名(格式),而不是File.toString()返回的完整文件路径,所以我相信这只是使用ArrayAdapter而排除?谢谢!为ArrayAdapterArrayList <File>()作为微调器
我有一个ArrayList(),我想要显示为一个微调。问题是,我需要显示除File.toString()以外的内容。我想将Spinner的视图文本设置为文件名(格式),而不是File.toString()返回的完整文件路径,所以我相信这只是使用ArrayAdapter而排除?谢谢!为ArrayAdapterArrayList <File>()作为微调器
的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