CursorWindow列数

时间:2012-08-03 09:32:59

标签: android cursor

如何知道CursorWindow上有多少列? 为什么它有getNumRows()但没有getNumColumns(),尽管有setNumColumns()

1 个答案:

答案 0 :(得分:2)

我是用这种最可怕的方式做到的:

/**
 * Get the number of columns of this CursorWindow. The CursorWindow has to
 * have at least one row.
 */
public static int getCursorWindowNumCols(CursorWindow window) {

    // Ugly hack...
    int j = 0;
    while (true) {
        try {
            window.getString(0, j);
        } catch (IllegalStateException e) {
            break;
        } catch (SQLException e) {
            // It's a BLOB!
        }
        j++;
    }
    return j;
}

不建议使用此功能。如果有人遇到同样的问题并且需要快速解决方案来移动,那就发布它。