# BoundsRule

Artifact: [androidx.leanback:leanback](https://developer.android.com/jetpack/androidx/releases/leanback) [View Source](https://cs.android.com/search?q=file:androidx/leanback/graphics/BoundsRule.java+class:androidx.leanback.graphics.BoundsRule) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

*** ** * ** ***


```
public class BoundsRule
```

<br />

*** ** * ** ***

This class contains the rules for updating the bounds of a `https://developer.android.com/reference/androidx/leanback/graphics/CompositeDrawable.ChildDrawable`. It contains four rules, one for each value of the rectangular bound - left/top/right/bottom.

## Summary

| ### Nested types |
|---|
| `public final class https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` This class represents individual rules for updating the bounds. |

| ### Public fields |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` | `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule#bottom()` `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` for bottom attribute of `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule` |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` | `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule#left()` `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` for left attribute of `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule` |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` | `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule#right()` `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` for right attribute of `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule` |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` | `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule#top()` `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` for top attribute of `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule` |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule#BoundsRule()()` |
| `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule#BoundsRule(androidx.leanback.graphics.BoundsRule)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule boundsRule)` |

| ### Public methods |
|---|---|
| `void` | `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule#calculateBounds(android.graphics.Rect,android.graphics.Rect)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/graphics/Rect.html rect, @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/graphics/Rect.html result)` Takes in the current bounds and sets the final values based on the individual rules in the result object. |

## Public fields

### bottom

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
public @Nullable BoundsRule.ValueRule bottom
```

`https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` for bottom attribute of `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule`

### left

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
public @Nullable BoundsRule.ValueRule left
```

`https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` for left attribute of `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule`

### right

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
public @Nullable BoundsRule.ValueRule right
```

`https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` for right attribute of `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule`

### top

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
public @Nullable BoundsRule.ValueRule top
```

`https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule.ValueRule` for top attribute of `https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule`

## Public constructors

### BoundsRule

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
public BoundsRule()
```

### BoundsRule

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
public BoundsRule(@NonNull BoundsRule boundsRule)
```

## Public methods

### calculateBounds

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
public void calculateBounds(@NonNull Rect rect, @NonNull Rect result)
```

Takes in the current bounds and sets the final values based on the individual rules in the result object.

| Parameters |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/graphics/Rect.html rect` | Represents the current bounds. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/graphics/Rect.html result` | Represents the final bounds. |