The Android Developer Challenge is back! Submit your idea before December 2.

Selection

open class Selection<K : Any!> : MutableIterable<K>
kotlin.Any
   ↳ androidx.recyclerview.selection.Selection

Object representing a "primary" selection and a "provisional" selection.

This class tracks selected items by managing two sets:

Primary Selection

Primary selection consists of items selected by a user. This represents the selection "at rest", as the selection does not contains items that are in a "provisional" selected state created by way of an ongoing gesture or band operation.

Provisional Selection

Provisional selections are selections which are interim in nature.

Provisional selection exists to address issues where a transitory selection might momentarily intersect with a previously established selection resulting in a some or all of the established selection being erased. Such situations may arise when band selection is being performed in "additive" mode (e.g. SHIFT or CTRL is pressed on the keyboard prior to mouse down), or when there's an active gesture selection (which can be initiated by long pressing an unselected item while there is an existing selection).

Summary

Public methods

open Boolean
contains(@Nullable key: K?)

open Boolean
equals(other: Any?)

open Int

open Boolean

open MutableIterator<K>

Returns an Iterator that iterators over the selection, *excluding* any provisional selection.

open Int

open String

Public methods

contains

open fun contains(@Nullable key: K?): Boolean
Parameters
key K?:
Return
Boolean: true if the position is currently selected.

equals

open fun equals(other: Any?): Boolean

hashCode

open fun hashCode(): Int

isEmpty

open fun isEmpty(): Boolean
Return
Boolean: true if the selection is empty.

iterator

open fun iterator(): MutableIterator<K>

Returns an Iterator that iterators over the selection, *excluding* any provisional selection.

size

open fun size(): Int
Return
Int: size of the selection including both final and provisional selected items.

toString

open fun toString(): String