# MatrixCursor.RowBuilder

Added in[API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)

# RowBuilder

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/android/database/MatrixCursor.RowBuilder "View this page in Java")  

```
open class RowBuilder
```

|---|--------------------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                                       ||
| ↳ | [android.database.MatrixCursor.RowBuilder](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#) |

Builds a row of values using either of these approaches:

- Values can be added with explicit column ordering using[add(java.lang.Object)](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#add(kotlin.Any)), which starts from the left-most column and adds one column value at a time. This follows the same ordering as the column names specified at cursor construction time.
- Column and value pairs can be offered for possible inclusion using[add(java.lang.String,java.lang.Object)](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#add(kotlin.String,%20kotlin.Any)). If the cursor includes the given column, the value will be set for that column, otherwise the value is ignored. This approach is useful when matching data to a custom projection.

Undefined values are left as`null`.

<br />

## Summary

|                                                                                                                                                                                                                                                           Public methods                                                                                                                                                                                                                                                           ||
|--------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| open[MatrixCursor.RowBuilder](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#)! | [add](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#add(kotlin.Any))`(`columnValue:` `[Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)!`)` Sets the next column value in this row.                                                                                                                                                   |
| open[MatrixCursor.RowBuilder](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#)! | [add](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#add(kotlin.String,%20kotlin.Any))`(`columnName:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`, `value:` `[Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)!`)` Offer value for possible inclusion if this cursor defines the given column. |

## Public methods

### add

Added in[API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun add(columnValue: Any!): MatrixCursor.RowBuilder!
```

Sets the next column value in this row.

|                                                                         Return                                                                         ||
|----------------------------------------------------------------------------------------------------------------------|----------------------------------|
| [MatrixCursor.RowBuilder](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#)! | this builder to support chaining |

|                                      Exceptions                                       ||
|----------------------------------------------------|-----------------------------------|
| `android.database.CursorIndexOutOfBoundsException` | if you try to add too many values |

### add

Added in[API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun add(
    columnName: String!, 
    value: Any!
): MatrixCursor.RowBuilder!
```

Offer value for possible inclusion if this cursor defines the given column. Columns not defined by the cursor are silently ignored.

|                                                                         Return                                                                         ||
|----------------------------------------------------------------------------------------------------------------------|----------------------------------|
| [MatrixCursor.RowBuilder](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.RowBuilder#)! | this builder to support chaining |