如何在android中获取ListView反向位置?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在android中获取ListView反向位置?相关的知识,希望对你有一定的参考价值。

我使用ListView来显示记录的历史。我使用数据库来存储和拉入记录到ListView。现在,我想通过这样做再次拉出这条记录:

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        positions = position;
        checkdata();
    }
}

并使用位置从数据库中获取数据并转换为id

public void checkdata() {
    String[] columns = {"id", "titleexam", "address", "time", "score", "Examdata", "totalscore", "hour", "min", "sec", "timedis"};
    Cursor cursor = sqLiteDatabase.query("record", columns, null, null, null, null, null);
    cursor.move(positions);
    ExamRecord recordr = new ExamRecord(Integer.parseInt(cursor.getString(0)), cursor.getString(1), cursor.getString(2), cursor.getString(3), cursor.getString(4), cursor.getString(5), cursor.getString(6), cursor.getString(7), cursor.getString(8), cursor.getString(9), cursor.getString(10));
    title = cursor.getString(1);
    data = cursor.getString(5);
}

当我对ListView进行反向排序时,问题就开始了,因为ListView会在顶部显示所有最近的记录,而在底部使用这个记录,在适配器中显示它以向用户显示。

Collections.reverse(records);

如何获得相反顺序的头寸(id)?

答案

你有很多选择 选项1:您可以根据一列反转查询顺序

 Cursor cursor= sqLiteDatabase.query("record", columns, null, null, null, null yourColumn+" DESC");

选项2:如果您在ArrayList数据结构上发送数据,则可以将其反转 Collections.reverse(YourList);

选项3:您可以自行反转ListView我不会对您的问题有效

android:stackFromBottom="true"
android:transcriptMode="normal"

以上是关于如何在android中获取ListView反向位置?的主要内容,如果未能解决你的问题,请参考以下文章

如何在android的listview中获取项目的视图?

Android Widget:在 ListView 中获取位置

在 Android ListVIew 的位置获取项目

android在后台获取位置并更新listview

如何在适配器外部的 ListView 和 GridView 中获取项目位置?

如何使用json解析android在listview中获取图像