Android 特定阵列上的排序适配器

Android 特定阵列上的排序适配器,android,listview,android-arrayadapter,baseadapter,Android,Listview,Android Arrayadapter,Baseadapter,我将一个对象集合分配给一个适配器集,并将其设置为listview。我知道当适配器值包含单个对象时如何对其进行排序。我的问题是如何仅根据数据类型对集合进行排序。下面是我的收藏 you = new MyVideoAdapter(getActivity(),vDancers,video, vName, vDanceStyle, vOwner, dCountry, vPic, vCreated, fullname, vLikes,vComments, vV

我将一个对象集合分配给一个适配器集,并将其设置为listview。我知道当适配器值包含单个对象时如何对其进行排序。我的问题是如何仅根据数据类型对集合进行排序。下面是我的收藏

you = new MyVideoAdapter(getActivity(),vDancers,video, vName, vDanceStyle, vOwner, dCountry, vPic, vCreated, fullname,
                        vLikes,vComments, vViews,vRepost, objectID, nLikes, nComments, nRepost, vUserID, postType);
                //you.comp
                listView.setAdapter(you); 

我想按vCreated对这个适配器进行排序,vCreated是一个日期数组。提前感谢您的帮助。

对于那些寻求解决方案的人,我就是这样做的。我不知道这是否是最好的解决方案,但它确实适用于我的案例。 1.我没有用单个数组填充适配器,而是创建了一个ArrayList并用我的数组填充它

public class Items implements Comparable<Items>{

private final Number vLikes; private final Number vComments; private final Number vRepost; private final Number vViews;
private  final Date vCreated;

public Items(Number vLikes, Number vComments, Number vViews, Number vRepost, Date created) {
    this.vCreated = vCreated;
    this.fullname = fullname;
    this.vLikes = vLikes;
    this.vComments = vComments;
    this.vViews = vViews;
    this.vRepost = vRepost;
}

@Override
public int compareTo(Items o) {
    if (getvCreated() == null || o.getvCreated() == null)
        return 0;
    return o.getvCreated().compareTo(getvCreated());
}

public Number getvLikes() {
    return vLikes;
}

public Number getvComments() {
    return vComments;
}

public Number getvViews() {
    return vViews;
}

public Number getvRepost() {
    return vRepost;
}
public Date getvCreated() {
    return vCreated;
}
}
我希望这有帮助

List<Items> myList = new ArrayList<Items>();
Items item = new Items(a,b,c,d);//a, b, are my variables
myList.add(item);
Collections.sort(myList);
you = new MyAdapter(getActivity(), myList);