我的 Android 应用程序中有一个 GridView ,其中图像是从 xml 文件中获取的,并在 GridView 中设置和查看。 xml 文件中的一些图像具有重要标记。 我想在网格的开头显示标记的图像。为此,我认为我必须应用排序。谁能建议我如何对图像进行排序? 提前致谢。
最佳答案
我假设您有一个要绑定(bind)到适配器的图像列表。如果您有一个图像列表并想要对其进行排序,则需要实现自定义比较器来对该数组(列表)进行排序。
这是自定义比较器的示例...
public Comparator<TheaterInfo> ComparatorByDistance = new Comparator<TheaterInfo>() {
public int compare(TheaterInfo object1, TheaterInfo object2) {
if (object1.getDistance().length() > 0
&& object2.getDistance().length() > 0) {
String[] d1 = object1.getDistance().replace(" ", "#").split("#");
String[] d2 = object2.getDistance().replace(" ", "#").split("#");
float o1 = Utils.ConvertToFloat(d1.length > 1 ? d1[0] : "0.0");
float o2 = Utils.ConvertToFloat(d2.length > 1 ? d2[0] : "0.0");
if (o1 == o2)
return 0;
return o1 > o2 ? 1 : -1;
}
else
{
return object1.getDistance().length() > 0 ? 1 : -1;
}
}
};
您可以通过...使用此比较器
Collections.sort(your_list_type_object, ComparatorByDistance);
谢谢。
关于android - 在网格布局的适配器中应用排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7723872/