---
title: IKImageBrowserView
framework: quartz
role: symbol
role_heading: Class
path: quartz/ikimagebrowserview
---

# IKImageBrowserView

A view for displaying and browsing a large collection of images and movies.

## Declaration

```swift
class IKImageBrowserView
```

## Overview

Overview The IKImageBrowserView class is a view for displaying and browsing a large amount of images and movies efficiently. This class will be deprecated in a future release. Please switch to NSCollectionView instead. You must set a datasource for the view and implement, at a minimum, the numberOfItems(inImageBrowser:) and imageBrowser(_:itemAt:) described in IKImageBrowserDataSource Protocol. The items must conform to the IKImageBrowserItem Protocol protocol. The class’s delegate object must conform to IKImageBrowserDelegate Protocol protocol. It receives notification of changes in selection, as well as mouse events in the cells. note: The image browser supports either being hosted in a layer-backed view or using custom layers for its own appearance. Custom layers on the image browser are not supported when the image browser is itself backed by a layer.

## Topics

### Updating the Display of the Content

- [reloadData()](quartz/ikimagebrowserview/reloaddata().md)

### Getting and Setting the Delegate

- [delegate](quartz/ikimagebrowserview/delegate.md)

### Getting and Setting the Data Source

- [dataSource](quartz/ikimagebrowserview/datasource.md)

### Setting the Appearance

- [setCellsStyleMask(_:)](quartz/ikimagebrowserview/setcellsstylemask(_:).md)
- [cellsStyleMask()](quartz/ikimagebrowserview/cellsstylemask().md)
- [setConstrainsToOriginalSize(_:)](quartz/ikimagebrowserview/setconstrainstooriginalsize(_:).md)
- [constrainsToOriginalSize()](quartz/ikimagebrowserview/constrainstooriginalsize().md)
- [setIntercellSpacing(_:)](quartz/ikimagebrowserview/setintercellspacing(_:).md)
- [intercellSpacing()](quartz/ikimagebrowserview/intercellspacing().md)

### Creating a Custom Cell for an Item

- [newCell(forRepresentedItem:)](quartz/ikimagebrowserview/newcell(forrepresenteditem:).md)

### Zooming and Resizing

- [setZoomValue(_:)](quartz/ikimagebrowserview/setzoomvalue(_:).md)
- [zoomValue()](quartz/ikimagebrowserview/zoomvalue().md)
- [setContentResizingMask(_:)](quartz/ikimagebrowserview/setcontentresizingmask(_:).md)
- [contentResizingMask()](quartz/ikimagebrowserview/contentresizingmask().md)

### Scrolling

- [scrollIndexToVisible(_:)](quartz/ikimagebrowserview/scrollindextovisible(_:).md)

### Setting and Getting Cell Size

- [setCellSize(_:)](quartz/ikimagebrowserview/setcellsize(_:).md)
- [cellSize()](quartz/ikimagebrowserview/cellsize().md)

### Getting Item Information

- [indexOfItem(at:)](quartz/ikimagebrowserview/indexofitem(at:).md)
- [itemFrame(at:)](quartz/ikimagebrowserview/itemframe(at:).md)
- [visibleItemIndexes()](quartz/ikimagebrowserview/visibleitemindexes().md)
- [cellForItem(at:)](quartz/ikimagebrowserview/cellforitem(at:).md)

### Reordering and Groups Items

- [selectionIndexes()](quartz/ikimagebrowserview/selectionindexes().md)
- [setSelectionIndexes(_:byExtendingSelection:)](quartz/ikimagebrowserview/setselectionindexes(_:byextendingselection:).md)
- [setAllowsMultipleSelection(_:)](quartz/ikimagebrowserview/setallowsmultipleselection(_:).md)
- [allowsMultipleSelection()](quartz/ikimagebrowserview/allowsmultipleselection().md)
- [setAllowsEmptySelection(_:)](quartz/ikimagebrowserview/setallowsemptyselection(_:).md)
- [allowsEmptySelection()](quartz/ikimagebrowserview/allowsemptyselection().md)
- [setAllowsReordering(_:)](quartz/ikimagebrowserview/setallowsreordering(_:).md)
- [allowsReordering()](quartz/ikimagebrowserview/allowsreordering().md)
- [setAnimates(_:)](quartz/ikimagebrowserview/setanimates(_:).md)
- [animates()](quartz/ikimagebrowserview/animates().md)
- [expandGroup(at:)](quartz/ikimagebrowserview/expandgroup(at:).md)
- [collapseGroup(at:)](quartz/ikimagebrowserview/collapsegroup(at:).md)
- [isGroupExpanded(at:)](quartz/ikimagebrowserview/isgroupexpanded(at:).md)

### Supporting Drag and Drop

- [setDraggingDestinationDelegate(_:)](quartz/ikimagebrowserview/setdraggingdestinationdelegate(_:).md)
- [draggingDestinationDelegate()](quartz/ikimagebrowserview/draggingdestinationdelegate().md)
- [setDrop(_:dropOperation:)](quartz/ikimagebrowserview/setdrop(_:dropoperation:).md)
- [indexAtLocationOfDroppedItem()](quartz/ikimagebrowserview/indexatlocationofdroppeditem().md)
- [setAllowsDroppingOnItems(_:)](quartz/ikimagebrowserview/setallowsdroppingonitems(_:).md)
- [allowsDroppingOnItems()](quartz/ikimagebrowserview/allowsdroppingonitems().md)
- [dropOperation()](quartz/ikimagebrowserview/dropoperation().md)

### Core Animation Layer Integration

- [setForegroundLayer(_:)](quartz/ikimagebrowserview/setforegroundlayer(_:).md)
- [foregroundLayer()](quartz/ikimagebrowserview/foregroundlayer().md)
- [setBackgroundLayer(_:)](quartz/ikimagebrowserview/setbackgroundlayer(_:).md)
- [backgroundLayer()](quartz/ikimagebrowserview/backgroundlayer().md)

### QuickLook Support

- [setCanControlQuickLookPanel(_:)](quartz/ikimagebrowserview/setcancontrolquicklookpanel(_:).md)
- [canControlQuickLookPanel()](quartz/ikimagebrowserview/cancontrolquicklookpanel().md)

### Getting Columns and Rows Information

- [numberOfColumns()](quartz/ikimagebrowserview/numberofcolumns().md)
- [numberOfRows()](quartz/ikimagebrowserview/numberofrows().md)
- [rect(ofColumn:)](quartz/ikimagebrowserview/rect(ofcolumn:).md)
- [columnIndexes(in:)](quartz/ikimagebrowserview/columnindexes(in:).md)
- [rect(ofRow:)](quartz/ikimagebrowserview/rect(ofrow:).md)
- [rowIndexes(in:)](quartz/ikimagebrowserview/rowindexes(in:).md)

### Constants

- [Cell Appearance Style Masks](quartz/1564248-cell-appearance-style-masks.md)
- [Group Style Attributes](quartz/1564247-group-style-attributes.md)
- [View Options Keys](quartz/view-options-keys.md)
- [Group Keys](quartz/group-keys.md)
- [IKImageBrowserDropOperation](quartz/ikimagebrowserdropoperation.md)

## Relationships

### Inherits From

- [NSView](appkit/nsview.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSAccessibilityElementProtocol](appkit/nsaccessibilityelementprotocol.md)
- [NSAccessibilityProtocol](appkit/nsaccessibilityprotocol.md)
- [NSAnimatablePropertyContainer](appkit/nsanimatablepropertycontainer.md)
- [NSAppearanceCustomization](appkit/nsappearancecustomization.md)
- [NSCoding](foundation/nscoding.md)
- [NSDraggingDestination](appkit/nsdraggingdestination.md)
- [NSDraggingSource](appkit/nsdraggingsource.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSStandardKeyBindingResponding](appkit/nsstandardkeybindingresponding.md)
- [NSTouchBarProvider](appkit/nstouchbarprovider.md)
- [NSUserActivityRestoring](appkit/nsuseractivityrestoring.md)
- [NSUserInterfaceItemIdentification](appkit/nsuserinterfaceitemidentification.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
