---
title: "HorizontalUncontainedCarousel"
description: "A horizontal carousel that displays its items with the given size except for one item at the end
that is cut off."
type: "component"
---

<div class='type'>Composable Component</div>



A horizontal carousel that displays its items with the given size except for one item at the end
that is cut off.

<a id='references'></a>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
@Composable
fun HorizontalUncontainedCarousel(
    state: CarouselState,
    itemWidth: Dp,
    modifier: Modifier = Modifier,
    itemSpacing: Dp = 0.dp,
    flingBehavior: TargetedFlingBehavior = CarouselDefaults.noSnapFlingBehavior(),
    userScrollEnabled: Boolean = true,
    contentPadding: PaddingValues = PaddingValues(0.dp),
    content: @Composable CarouselItemScope.(itemIndex: Int) -> Unit,
)
```


#### Parameters

| | |
| --- | --- |
| state | The state object to be used to control the carousel's state |
| itemWidth | The width of items in the carousel |
| modifier | A modifier instance to be applied to this carousel container |
| itemSpacing | The amount of space used to separate items in the carousel |
| flingBehavior | The `TargetedFlingBehavior` to be used for post scroll gestures |
| userScrollEnabled | whether the scrolling via the user gestures or accessibility actions is allowed. |
| contentPadding | a padding around the whole content. This will add padding for the content after it has been clipped. You can use it to add a padding before the first item or after the last one. Use `itemSpacing` to add spacing between the items. |
| content | The carousel's content Composable |






## Code Examples
### HorizontalUncontainedCarouselSample
```kotlin
@Preview
@Composable
fun HorizontalUncontainedCarouselSample() {
    data class CarouselItem(
        val id: Int,
        @DrawableRes val imageResId: Int,
        @StringRes val contentDescriptionResId: Int,
    )
    val items =
        listOf(
            CarouselItem(0, R.drawable.carousel_image_1, R.string.carousel_image_1_description),
            CarouselItem(1, R.drawable.carousel_image_2, R.string.carousel_image_2_description),
            CarouselItem(2, R.drawable.carousel_image_3, R.string.carousel_image_3_description),
            CarouselItem(3, R.drawable.carousel_image_4, R.string.carousel_image_4_description),
            CarouselItem(4, R.drawable.carousel_image_5, R.string.carousel_image_5_description),
        )
    HorizontalUncontainedCarousel(
        state = rememberCarouselState { items.count() },
        modifier = Modifier.width(412.dp).height(221.dp),
        itemWidth = 186.dp,
        itemSpacing = 8.dp,
        contentPadding = PaddingValues(horizontal = 16.dp),
    ) { i ->
        val item = items[i]
        Image(
            modifier = Modifier.height(205.dp).maskClip(MaterialTheme.shapes.extraLarge),
            painter = painterResource(id = item.imageResId),
            contentDescription = stringResource(item.contentDescriptionResId),
            contentScale = ContentScale.Crop,
        )
    }
}
```

