0

皆さん、

ListViews左側用と右側用の2 つを取得しました。しかし、私はCursor価値のあるものを持っています。ここで、カーソルから偶数行を取得し、それを amatrixcursorに入れて左側ListViewを埋め、右側を埋めたいオッズにします。

しかし、私は9列のようになりました.とにかく、matrixCursor各列を個別に選択せずに行全体をに入れることはできますか? そのため、データベースまたは何かについて何かが変更されたときに、列を手動で調整する必要はありません。

の代わりに Cursor を使用することもできますがMatrixCursor、どちらが良いでしょうか?

4

1 に答える 1

0

解決:

MatrixCursor lCursor;
MatrixCursor rCursor;
String[] columnNames = new String[mCursor.getColumnCount()];
mCursor.moveToFirst();
for (int j = 0; j < mCursor.getColumnCount(); j++) {
    columnNames[j] = mCursor.getColumnName(j);
}
lCursor = new MatrixCursor(columnNames);
rCursor = new MatrixCursor(columnNames);

if (mCursor.getCount() > 0) {
    for (int i = 0; i < mCursor.getCount(); i++) {
        mCursor.moveToPosition(i);
        if ((i & 1) == 0) {
            String[] values = new String[mCursor.getColumnCount()];
            for (int j = 0; j < mCursor.getColumnCount(); j++) {
                values[j] = mCursor.getString(j);
            }
            lCursor.addRow(values);
        } else {
            String[] values = new String[mCursor.getColumnCount()];
            for (int j = 0; j < mCursor.getColumnCount(); j++) {
                values[j] = mCursor.getString(j);
            }
            rCursor.addRow(values);
        }
    }
    left.setAdapter(new HomeMenuAdapter(MainActivity.getContext(),
            lCursor));
    right.setAdapter(new HomeMenuAdapter(MainActivity.getContext(),
            rCursor));
}
于 2014-11-14T09:45:05.770 に答える