<!--
{
  "availability" : [
    "iOS: 2.0.0 -",
    "iPadOS: 2.0.0 -",
    "macCatalyst: 13.1.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UIPickerViewDelegate/pickerView(_:viewForRow:forComponent:reusing:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(pl)UIPickerViewDelegate(im)pickerView:viewForRow:forComponent:reusingView:"
  },
  "title" : "pickerView(_:viewForRow:forComponent:reusing:)"
}
-->

# pickerView(_:viewForRow:forComponent:reusing:)

Called by the picker view when it needs the view to use for a given row in a given component.

```
optional func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView
```

## Parameters

`pickerView`

An object representing the picker view requesting the data.

`row`

A zero-indexed number identifying a row of `component`. Rows are numbered top-to-bottom.

`component`

A zero-indexed number identifying a component of `pickerView`. Components are numbered left-to-right.

`view`

A view object that was previously used for this row, but is now hidden and cached by the picker view.

## Return Value

A view object to use as the content of `row`. The object can be any subclass of [`UIView`](/documentation/UIKit/UIView), such as [`UILabel`](/documentation/UIKit/UILabel), [`UIImageView`](/documentation/UIKit/UIImageView), or even a custom view.

## Discussion

If the previously used view (the `view` parameter) is adequate, return that. If you return a different view, the previously used view is released. The picker view centers the returned view in the rectangle for `row`.

---

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)