ContentProvider对外共享数据的时候的query()方法是需要一个cursor的。 但是当ContentProvider不是从数据库中去的数据,而又需要返回cursor的时候就需要MatrixCursor。 |
ContentProvider对外共享数据的时候的query()方法是需要一个cursor的,
但是如果没有数据库,而项目又需要从ContentProvider读取数据的时候怎么办?
更糟糕的是其他方法操作也都是需要cursor的。
此时就需要MatrixCursor了。相当有趣,它相当于为你模拟了一个表。
@Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { String[] tableCursor = new String[] { "name", "job", "salary" }; MatrixCursor cursor = new MatrixCursor(tableCursor); cursor.addRow(new Object[] { "1111", "1111", "1111" }); return cursor; }
//备忘,在我的MessageCenterActivity里有完整使用