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