# BoundsRule

# 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)

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/androidx/leanback/graphics/BoundsRule "View this page in Java")

<br />

```
class BoundsRule
```

<br />

*** ** * ** ***

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

## Summary

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

|                                                                                                                         ### Public constructors                                                                                                                          |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule#BoundsRule())`()`                                                                                                                                                      |
| [BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule#BoundsRule(androidx.leanback.graphics.BoundsRule))`(boundsRule: `[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule)`)` |

|                             ### Public functions                              |
|-------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) | [calculateBounds](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule#calculateBounds(android.graphics.Rect,android.graphics.Rect))`(rect: `[Rect](https://developer.android.com/reference/android/graphics/Rect.html)`, result: `[Rect](https://developer.android.com/reference/android/graphics/Rect.html)`)` Takes in the current bounds and sets the final values based on the individual rules in the result object. |

|                                                   ### Public properties                                                   |
|---------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [BoundsRule.ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)`?` | [bottom](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule#bottom()) [ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)for bottom attribute of[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule) |
| [BoundsRule.ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)`?` | [left](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule#left()) [ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)for left attribute of[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule)       |
| [BoundsRule.ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)`?` | [right](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule#right()) [ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)for right attribute of[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule)    |
| [BoundsRule.ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)`?` | [top](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule#top()) [ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)for top attribute of[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule)          |

## Public constructors

### BoundsRule

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

```
BoundsRule()
```  

### BoundsRule

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

```
BoundsRule(boundsRule: BoundsRule)
```  

## Public functions

### calculateBounds

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

```
fun calculateBounds(rect: Rect, result: Rect): Unit
```

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

|                                      Parameters                                      |
|--------------------------------------------------------------------------------------|--------------------------------|
| `rect: `[Rect](https://developer.android.com/reference/android/graphics/Rect.html)   | Represents the current bounds. |
| `result: `[Rect](https://developer.android.com/reference/android/graphics/Rect.html) | Represents the final bounds.   |

## Public properties

### bottom

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

```
val bottom: BoundsRule.ValueRule?
```

[ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)for bottom attribute of[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule)  

### left

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

```
val left: BoundsRule.ValueRule?
```

[ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)for left attribute of[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule)  

### right

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

```
val right: BoundsRule.ValueRule?
```

[ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)for right attribute of[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule)  

### top

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

```
val top: BoundsRule.ValueRule?
```

[ValueRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule.ValueRule)for top attribute of[BoundsRule](https://developer.android.com/reference/kotlin/androidx/leanback/graphics/BoundsRule)