<!--
{
  "availability" : [
    "iOS: 6.0.0 -",
    "iPadOS: 6.0.0 -",
    "macCatalyst: 13.1.0 -",
    "tvOS: -",
    "visionOS: 1.0.0 - 1.0.0"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UICollectionView/register(_:forSupplementaryViewOfKind:withReuseIdentifier:)-9hn73",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(cs)UICollectionView(im)registerNib:forSupplementaryViewOfKind:withReuseIdentifier:"
  },
  "title" : "register(_:forSupplementaryViewOfKind:withReuseIdentifier:)"
}
-->

# register(_:forSupplementaryViewOfKind:withReuseIdentifier:)

Registers a nib file for use in creating supplementary views for the collection view.

```
func register(_ nib: UINib?, forSupplementaryViewOfKind kind: String, withReuseIdentifier identifier: String)
```

## Parameters

`nib`

The nib object containing the view object. The nib file must contain only one top-level object and that object must be of the type [`UICollectionReusableView`](/documentation/UIKit/UICollectionReusableView).

`kind`

The kind of supplementary view to create. The layout defines the types of supplementary views it supports. The value of this string may correspond to one of the predefined kind strings or to a custom string that the layout added to support a new type of supplementary view. This parameter must not be `nil`.

`identifier`

The reuse identifier to associate with the specified nib file. This parameter must not be `nil` and must not be an empty string.

## Discussion

Prior to calling the [`dequeueReusableSupplementaryView(ofKind:withReuseIdentifier:for:)`](/documentation/UIKit/UICollectionView/dequeueReusableSupplementaryView(ofKind:withReuseIdentifier:for:)) method of the collection view, you must use this method or the [`register(_:forSupplementaryViewOfKind:withReuseIdentifier:)`](/documentation/UIKit/UICollectionView/register(_:forSupplementaryViewOfKind:withReuseIdentifier:)-661io) method to tell the collection view how to create a supplementary view of the given type. If a view of the specified type isn’t currently in a reuse queue, the collection view uses the provided information to create a view object automatically.

If you previously registered a class or nib file with the same element kind and reuse identifier, the class you specify in the `viewClass` parameter replaces the old entry. You may specify `nil` for `nib` if you want to unregister the class from the specified element kind and reuse identifier.

---

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)