public sealed interface ListScope


Receiver scope which is used by VerticalList.

Summary

Public methods

abstract void
item(
    Object key,
    Object contentType,
    @Composable @NonNull Function1<@NonNull ListItemScopeUnit> content
)

Adds a single item.

abstract void
items(
    int count,
    Function1<@NonNull Integer, @NonNull Object> key,
    @NonNull Function1<@NonNull IntegerObject> contentType,
    @Composable @NonNull Function2<@NonNull ListItemScope, @NonNull IntegerUnit> itemContent
)

Adds a count of items.

Public methods

item

Added in 1.0.0-alpha01
abstract void item(
    Object key,
    Object contentType,
    @Composable @NonNull Function1<@NonNull ListItemScopeUnit> content
)

Adds a single item.

Parameters
Object key

a stable and unique key representing the item. Using the same key for multiple items in the list is not allowed. Type of the key should be saveable via Bundle on Android. If null is passed the position in the list will represent the key. When you specify the key the scroll position will be maintained based on the key, which means if you add/remove items before the current visible item the item with the given key will be kept as the first visible one.

Object contentType

the type of the content of this item. The item compositions of the same type could be reused more efficiently. Note that null is a valid type and items of such type will be considered compatible.

@Composable @NonNull Function1<@NonNull ListItemScopeUnit> content

the content of the item

items

Added in 1.0.0-alpha01
abstract void items(
    int count,
    Function1<@NonNull Integer, @NonNull Object> key,
    @NonNull Function1<@NonNull IntegerObject> contentType,
    @Composable @NonNull Function2<@NonNull ListItemScope, @NonNull IntegerUnit> itemContent
)

Adds a count of items.

Parameters
int count

the items count

Function1<@NonNull Integer, @NonNull Object> key

a factory of stable and unique keys representing the item. Using the same key for multiple items in the list is not allowed. Type of the key should be saveable via Bundle on Android. If null is passed the position in the list will represent the key. When you specify the key the scroll position will be maintained based on the key, which means if you add/remove items before the current visible item the item with the given key will be kept as the first visible one.

@NonNull Function1<@NonNull IntegerObject> contentType

a factory of the content types for the item. The item compositions of the same type could be reused more efficiently. Note that null is a valid type and items of such type will be considered compatible.

@Composable @NonNull Function2<@NonNull ListItemScope, @NonNull IntegerUnit> itemContent

the content displayed by a single item