private ObservableListBase<AlbumDirectory> getAlbumObservableList(String searchSequence) {
return new ObservableListBase<AlbumDirectory>() {
private List<AlbumDirectory> list = getAlbumDirectories();
private List<AlbumDirectory> getAlbumDirectories() {
if (StringUtils.isNotBlank(searchSequence)) {
return getFilteredAlbumList();
} else {
return albumList.stream().map(AlbumDirectory::new).collect(Collectors.toList());
}
}
private List<AlbumDirectory> getFilteredAlbumList() {
return albumList.stream()
.filter(file -> file.getAbsolutePath().toLowerCase().contains(searchSequence))
.map(AlbumDirectory::new)
.sorted(Comparator.comparing(o -> o.getFile().getAbsolutePath()))
.collect(Collectors.toList());
}
@Override
public AlbumDirectory get(int index) {
try {
return list.get(index);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
@Override
public int size() {
return list.size();
}
};
}
AppPresenter.java 文件源码
java
阅读 20
收藏 0
点赞 0
评论 0
项目:musicdroid
作者:
评论列表
文章目录