OGeek|极客世界-中国程序员成长平台

标题: java - ListAdapter 在 ListView 中只添加一种类型的数据 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-9 06:19
标题: java - ListAdapter 在 ListView 中只添加一种类型的数据

有人可以帮我解决这个问题吗?我有两个光标项目。

但它只在 ListView 中设置任务。当我删除任务光标时,它会设置时间,但不能同时设置两者。

我想要这个作为列表:时间 - 任务名称

这是它的代码部分:

public void updateUI() {
    helper = new TaskDBHelper(MainActivityPhone.this);
    SQLiteDatabase sqlDB = helper.getReadableDatabase();

    Cursor cursor = sqlDB.query(TaskContract.TABLE,
            new String[]{TaskContract.Columns._ID, TaskContract.Columns.TIME},
            null, null, null, null, TaskContract.Columns.TIME + " ASC");

    Cursor cursor2 = sqlDB.query(TaskContract.TABLE,
            new String[]{TaskContract.Columns._ID, TaskContract.Columns.TASK},
            null, null, null, null, TaskContract.Columns.TIME + " ASC");

    listAdapter = new SimpleCursorAdapter(
            this, R.layout.task_view,cursor,
            new String[]{TaskContract.Columns.TIME, TaskContract.Columns.TASK},
            new int[]{R.id.timeTextView, R.id.taskTextView},
            0
    );



  //  Log.v("Cursor Object", DatabaseUtils.dumpCursorToString(cursor));

 /*   Cursor cursor2 = sqlDB.query(TaskContract.TABLE,
            new String[]{TaskContract.Columns._ID, TaskContract.Columns.TASK},
            null, null, null, null, TaskContract.Columns.TIME + " ASC");


  listAdapter = new SimpleCursorAdapter(
            this,
            R.layout.task_view,
            cursor2,
            new String[]{TaskContract.Columns.TASK},
            new int[]{R.id.taskTextView},
            0
    );*/

    ListView listView = (ListView) findViewById(R.id.list);
    listView.setAdapter(listAdapter);





}



Best Answer-推荐答案


你可以做的几件事:

如果您稍微搜索一下,我认为所有这 3 种方法都有足够的代码。我认为问题在于当前适配器没有组合两个表的逻辑。

关于java - ListAdapter 在 ListView 中只添加一种类型的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34742401/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://www.ogeek.cn/) Powered by Discuz! X3.4