How to add pagination in an expandable list. How to add additional download button code

Primary activity

Code to retrieve data from Sqlite and add it inside Extensible list view.

public void getExpandableListData() {
    // Group data//
    Cursor cursor = databaseHelper.getGroupData();
    cursor.moveToFirst();
    do {
        String categoryDescription = cursor.getString(cursor    .getColumnIndex("categorydesc"));
        int categoryId = cursor.getInt(cursor.getColumnIndex("CategoryId"));
        listDataHeader.add(categoryDescription);
        // Child data//
        Cursor cursorChild = databaseHelper.getChildData(categoryId);
        List<ChildInfo> childList = new ArrayList<ChildInfo>();
        cursorChild.moveToFirst();
        while (cursorChild.moveToNext()) {
            String businessName = cursorChild.getString(cursorChild.getColumnIndex("BusinessName"));
            phoneNumber = cursorChild.getString(cursorChild.getColumnIndex("ph_Phone"));
            String landMark = cursorChild.getString(cursorChild.getColumnIndex("LandMark"));
            ChildInfo childInfo = new ChildInfo(businessName, phoneNumber,  landMark);
            childList.add(childInfo);
        }
        childDataHashMap.put(categoryDescription, childList);
        } while (cursor.moveToNext());
    cursor.close();
}

Class DataBaseHelper

public Cursor getGroupData() {
    String query = "SELECT * FROM Category GROUP BY categorydesc";
    return db.rawQuery(query, null);
}

 public Cursor getChildData(int CategoryId) {
    String query = "SELECT * from Category WHERE CategoryId = '" + CategoryId + "' LIMIT 3" ;
    return db.rawQuery(query, null);
}

When loading more tabs, I have to get the data from Sqlite db and set it to a drop-down list. Maybe someone will suggest me how to avoid repeating the data retrieved from Sqlite and maintain the amount of data retrieved.

+4
source share

Source: https://habr.com/ru/post/1584439/


All Articles