<!--
{
  "availability" : [
    "iOS: 6.0.0 -",
    "iPadOS: 6.0.0 -",
    "macCatalyst: 13.1.0 -",
    "tvOS: -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UICollectionReusableView",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(cs)UICollectionReusableView"
  },
  "title" : "UICollectionReusableView"
}
-->

# UICollectionReusableView

A view that defines the behavior for all cells and supplementary views presented by a collection view.

```
@MainActor class UICollectionReusableView
```

## Overview

Reusable views are so named because the collection view places them on a reuse queue rather than deleting them when they’re scrolled out of the visible bounds. Such a view can then be retrieved and repurposed for a different set of content.

### Subclassing notes

This class is intended to be subclassed. Most methods defined by this class have minimal or no implementations. You aren’t required to override any of the methods but can do so in cases where you want to respond to changes in the view’s usage or layout.

## Topics

### Reusing cells

[`reuseIdentifier`](/documentation/UIKit/UICollectionReusableView/reuseIdentifier)

A string that identifies the purpose of the view.

[`-  prepareForReuse`](/documentation/UIKit/UICollectionReusableView/prepareForReuse())

Performs any clean up necessary to prepare the view for use again.

### Managing layout changes

[`-  preferredLayoutAttributesFittingAttributes:`](/documentation/UIKit/UICollectionReusableView/preferredLayoutAttributesFitting(_:))

Gives the cell a chance to modify the attributes provided by the layout object.

[`-  applyLayoutAttributes:`](/documentation/UIKit/UICollectionReusableView/apply(_:))

Applies the specified layout attributes to the view.

[`-  willTransitionFromLayout:toLayout:`](/documentation/UIKit/UICollectionReusableView/willTransition(from:to:))

Tells your view that the layout object of the collection view is about to change.

[`-  didTransitionFromLayout:toLayout:`](/documentation/UIKit/UICollectionReusableView/didTransition(from:to:))

Tells your view that the layout object of the collection view changed.

## Relationships

### Conforms To

[`UILargeContentViewerItem`](/documentation/UIKit/UILargeContentViewerItem)

[`CVarArg`](/documentation/Swift/CVarArg)

[`UICoordinateSpace`](/documentation/UIKit/UICoordinateSpace)

[`UIActivityItemsConfigurationProviding`](/documentation/UIKit/UIActivityItemsConfigurationProviding)

[`UIAccessibilityIdentification`](/documentation/UIKit/UIAccessibilityIdentification)

[`UIFocusItem`](/documentation/UIKit/UIFocusItem)

[`UIDynamicItem`](/documentation/UIKit/UIDynamicItem)

[`UITraitChangeObservable-67e94`](/documentation/UIKit/UITraitChangeObservable-67e94)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`UIPopoverPresentationControllerSourceItem`](/documentation/UIKit/UIPopoverPresentationControllerSourceItem)

[`Hashable`](/documentation/Swift/Hashable)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`UITraitEnvironment`](/documentation/UIKit/UITraitEnvironment)

[`CMBodyIdentifiable`](/documentation/CoreMotion/CMBodyIdentifiable)

[`UIResponderStandardEditActions`](/documentation/UIKit/UIResponderStandardEditActions)

[`CLBodyIdentifiable`](/documentation/CoreLocation/CLBodyIdentifiable)

[`UIFocusEnvironment`](/documentation/UIKit/UIFocusEnvironment)

[`NSTouchBarProvider`](/documentation/AppKit/NSTouchBarProvider)

[`CALayerDelegate`](/documentation/QuartzCore/CALayerDelegate)

[`Equatable`](/documentation/Swift/Equatable)

[`Sendable`](/documentation/Swift/Sendable)

[`UIAppearanceContainer`](/documentation/UIKit/UIAppearanceContainer)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`UIPasteConfigurationSupporting`](/documentation/UIKit/UIPasteConfigurationSupporting)

[`UIFocusItemContainer`](/documentation/UIKit/UIFocusItemContainer)

[`UIUserActivityRestoring`](/documentation/UIKit/UIUserActivityRestoring)

[`NSCoding`](/documentation/Foundation/NSCoding)

[`UIAppearance`](/documentation/UIKit/UIAppearance)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

### Inherited By

[`UICollectionViewCell`](/documentation/UIKit/UICollectionViewCell)

### Inherits From

[`UIView`](/documentation/UIKit/UIView)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)