<!--
{
  "availability" : [
    "macOS: 10.7.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSTableView/rowSizeStyle-swift.property",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:objc(cs)NSTableView(py)rowSizeStyle"
  },
  "title" : "rowSizeStyle"
}
-->

# rowSizeStyle

The row size style (small, medium, large, or custom) used by the table view.

```
var rowSizeStyle: NSTableView.RowSizeStyle { get set }
```

## Discussion

To set the row size style on a row by row basis, set the value of this property to [`NSTableView.RowSizeStyle.custom`](/documentation/AppKit/NSTableView/RowSizeStyle-swift.enum/custom) and implement the [`tableView(_:heightOfRow:)`](/documentation/AppKit/NSTableViewDelegate/tableView(_:heightOfRow:)) method in your table view delegate object.

The default value of this property is [`NSTableView.RowSizeStyle.custom`](/documentation/AppKit/NSTableView/RowSizeStyle-swift.enum/custom), which tells the table to use the [`rowHeight`](/documentation/AppKit/NSTableView/rowHeight) of the table instead of any pre-determined system values. Generally, `rowSizeStyle` should always be [`NSTableView.RowSizeStyle.custom`](/documentation/AppKit/NSTableView/RowSizeStyle-swift.enum/custom) except for “source lists”.

---

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)