Android添加操作下一步和prev行/文章

时间:2013-02-11 04:37:05

标签: android

如何在数据库sqlite中获取数据的android中的next和prev。 我想在下面作为图像:

enter image description here

我想如果我点击右键,那么到下一行/文章,如果我点击左边的按钮,那么得到上一行/文章。

我需要做的更多,我刚来到这里。这是我在listview之后的当前查询。下面是我点击listview中的项目时:

查询:

public Cursor getAllCategoryItem() {
        SQLiteDatabase db = this.getWritableDatabase();
        String selectQuery = "SELECT  * FROM myarticle";
        Cursor cursor = db.rawQuery(selectQuery, null);
        return cursor;
}

活动:

Cursor c = db.getAllCategoryItem();
int count = c.getCount();
int position = c.getPosition();
Log.d("MyLog", "Count: " + count + ", Position: " + position);

并获取logcat是Count:30,Position:-1;

我按下按钮prev并在菜单旁边:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        if (item.getItemId() == R.id.next_article) {
            // what code in here ?
            return true;
        } else if (item.getItemId() == R.id.prev_article) {
            // what code in here ?
            return true;
        } else {
            return super.onOptionsItemSelected(item);
        }
    }

感谢。

2 个答案:

答案 0 :(得分:0)

你可以采用以下两种方式之一。

1)按顺序从DB开始获取所有项目。存储在ArrayList中。跟踪当前项目是什么,当按下任一按钮时,将索引更改为1并更新显示

2)通过WHERE子句仅获取您现在需要的项目。当用户点击按钮时,通过WHERE子句请求新项。显示新项目。

答案 1 :(得分:0)

您可以通过查询遍历Sqlite数据库中的特定ID。但这似乎很乏味。

所以做一件事。在应用程序启动时,通过游标从数据库中获取所有数据并将其存储在数组中。然后遍历数组。