答案 0 :(得分:0)
好像您的集合是字符串的集合,只需将其映射为int或使用“ order:Int”和“ label:String”字段创建一个类持有者,然后尝试使用“ order”字段进行排序。
答案 1 :(得分:0)
据我了解,这个问题。您需要过滤器而不是排序来实现此目的。 如果您使用的是RecyclerView,则可以按以下步骤实现
您必须在模型文件中存储一个如下所示的整数。
Model.java
int fileCount = Directory.GetFiles(path, "*.*", SearchOption.AllDirectories).Length; // Will Retrieve count of all files in directry and sub directries
int fileCount = Directory.GetFiles(path, "*.*", SearchOption.TopDirectory).Length; // Will Retrieve count of all files in directry but not sub directries
int fileCount = Directory.GetFiles(path, "*.xml", SearchOption.AllDirectories).Length; // Will Retrieve count of files XML extension in directry and sub directries
以便您可以检查是否在想要的跨度之间。像这样
public class model {
private String name;
private int no;
public model(String name, int no) {
this.name = name;
this.no = no;
}
public String getName() {
return name;
}
public int getNo() {
return no;
}
}
这将为您提供一个arrayList,其中包含您想要的过滤成员。根据需要将它们放在活动中。另外,如果您使用的是recyclerView,这就是private void filterNaturalNo (ArrayList<model> models){
ArrayList<model> filteredList = new ArrayList<>();
for (model model: models){
if (model.getNo() < 5 && model.getNo() > 1){
filteredList.add(model);
}
}
adapter.refreshAdapter(filteredList);
}
的样子。
adapter.refreshAdapter(filteredList);
必须进行细微更改,才能确保正常工作。祝你好运