---
title: "makeSupplementaryView(ofKind:withIdentifier:for:)"
framework: appkit
role: symbol
role_heading: Instance Method
path: "appkit/nscollectionview/makesupplementaryview(ofkind:withidentifier:for:)"
---

# makeSupplementaryView(ofKind:withIdentifier:for:)

Creates or returns a reusable supplementary view of the specified type.

## Declaration

```swift
func makeSupplementaryView(ofKind elementKind: NSCollectionView.SupplementaryElementKind, withIdentifier identifier: NSUserInterfaceItemIdentifier, for indexPath: IndexPath) -> NSView
```

## Parameters

- `elementKind`: The kind of supplementary view to create. This value is defined by the layout object. This parameter must not be an empty string or nil.
- `identifier`: The reuse identifier for the specified item. This is the identifier you specified when registering the supplementary view. This parameter must not be nil.
- `indexPath`: The index path specifying the location of the supplementary view. The data source object receives this information in its doc://com.apple.appkit/documentation/AppKit/NSCollectionViewDataSource/collectionView(_:viewForSupplementaryElementOfKind:at:) method and you should just pass it along.

## Return Value

Return Value A view that adopts the NSCollectionViewElement protocol.

## Discussion

Discussion This method looks for a recycled supplementary view of the specified type and returns it if one exists. If one does not exist, it creates it using one of the following techniques: If you used the register(_:forSupplementaryViewOfKind:withIdentifier:) method to register a class for the identifier, this method instantiates your view class and returns it. If you used the register(_:forSupplementaryViewOfKind:withIdentifier:) method to register a nib file for the identifier, this method loads the view from the nib file and returns it.

## See Also

### Creating Collection View Items

- [makeItem(withIdentifier:for:)](appkit/nscollectionview/makeitem(withidentifier:for:).md)
- [register(_:forItemWithIdentifier:)](appkit/nscollectionview/register(_:foritemwithidentifier:)-6s4i.md)
- [register(_:forItemWithIdentifier:)](appkit/nscollectionview/register(_:foritemwithidentifier:)-90h1i.md)
- [register(_:forSupplementaryViewOfKind:withIdentifier:)](appkit/nscollectionview/register(_:forsupplementaryviewofkind:withidentifier:)-3dqa.md)
- [register(_:forSupplementaryViewOfKind:withIdentifier:)](appkit/nscollectionview/register(_:forsupplementaryviewofkind:withidentifier:)-7gvf2.md)
- [NSCollectionView.SupplementaryElementKind](appkit/nscollectionview/supplementaryelementkind.md)
- [NSUserInterfaceItemIdentifier](appkit/nsuserinterfaceitemidentifier.md)
