java - Android sqlite 数据库 - 如何显示 ListView 在滚动末尾添加 “Load more items”

标签 java android android-sqlite

我在 Android Java 应用程序中有一个 Listview,它从 Sqlite 数据库获取数据。我想在 MainActivity 中仅显示 10 个项目,并添加“加载更多项目”以在每次向上或向下滚动的末尾显示 10 个项目。怎么做?

这是获取DatabaseHelper.java中所有数据的代码:

public List<String> getAllData () {
    SQLiteDatabase db = this.getReadableDatabase();

    List<String> arrayList = new ArrayList<String>();

    Cursor cursor = db.rawQuery("select * from " + TABLE_NAME + " order by ID desc", null);
    cursor.moveToFirst();
    while (!cursor.isAfterLast()) {

                arrayList.add(
                        cursor.getString(cursor.getColumnIndex("ID"))+ ") " +
                        cursor.getString(cursor.getColumnIndex("TIME"))+ " | " +
                        cursor.getString(cursor.getColumnIndex("PHONE"))+ "\n" +
                        cursor.getString(cursor.getColumnIndex("SMS"))
                );

        cursor.moveToNext();
    }
    return arrayList;
}

这是我的 MainActivity.java:

public class MainActivity extends AppCompatActivity {
DatabaseHelper myDB;
ArrayAdapter arrayAdapter;
ListView txtLogs;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    myDB = new DatabaseHelper(MainActivity.this);
    arrayAdapter = new ArrayAdapter(MainActivity.this,android.R.layout.simple_list_item_1,myDB.getAllData());

    txtLogs = findViewById(R.id.txtLogs);
    txtLogs.setAdapter(arrayAdapter);

}

}

最佳答案

您好,您可以遵循一些教程。这是tutorial link这可以帮助您实现这一目标。

关于java - Android sqlite 数据库 - 如何显示 ListView 在滚动末尾添加 “Load more items”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61867307/

相关文章:

java - 当套接字读取java中的输入时,While循环失败

android - 在 SharedPreferences 中保存我的数据库版本

java - 如何将一个文件合并到另一个\Linux

Java 从现在到向后循环年份

Android 应用名称未显示

java - 创建新报价时无法添加产品详细信息

android - 如何从 Activity 中初始化我的 HostApduService?

android - 使用用户输入从android sqlite检索数据

android - 处理实体和 Pojo

java - 增加Java虚拟内存