0

Androidでormliteを使用して列の値全体をarrayListに変換しようとしていますが、これは直接APIで可能ですか?生の結果を使用して、私は近づきますが、完全ではありません:

GenericRawResults<String[]> rawResults =
     getHelper().getMyProcessDao().queryRaw(
         queryBuild.selectColumns("nid").prepareStatementString());
List<String[]> result = rawResults.getResults();
4

1 に答える 1

4

うーん。これがあなたが望むものかどうかはわかりません。ただし、具体的に要求することを実現する1つの方法は、ORMLiteのDAOメソッドRawRowMapperに渡すことができるdao.queryRaw(String、Rowmapper、String ...)を使用することです。

次のようなものが機能するはずです。

RawRowMapper<Integer> mapper = new RawRowMapper<Integer>() {
     public Integer mapRow(String[] columnNames, String[] resultColumns) {
        // maybe you should verify that there _is_ only 1 column here
        // maybe you should handle the possibility of a bad number and throw
        return Integer.parseInt(resultColumns[0]);
     }
};
GenericRawResults<Integer> rawResults =
    getHelper().getMyProcessDao().queryRaw(
        queryBuild.selectColumns("nid").prepareStatementString(), mapper);
List<Integer> list = rawResults.getResults();
于 2012-07-11T17:45:12.960 に答える