<!--
{
  "availability" : [
    "watchOS: 2.0.0 - 27.2.0"
  ],
  "documentType" : "symbol",
  "framework" : "ClockKit",
  "identifier" : "/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "ClockKit"
    ],
    "preciseIdentifier" : "c:objc(cs)CLKComplicationTemplateModularLargeColumns"
  },
  "title" : "CLKComplicationTemplateModularLargeColumns"
}
-->

# CLKComplicationTemplateModularLargeColumns

A template for displaying multiple columns of data.

```
class CLKComplicationTemplateModularLargeColumns
```

## Overview

This template belongs to the [`CLKComplicationFamily.modularLarge`](/documentation/ClockKit/CLKComplicationFamily/modularLarge) family.

![A diagram showing the layout of the modular large columns complication. The diagram shows two columns with three rows of text and an optional column of images.](images/com.apple.clockkit/media-2933749@2x.png)

The following table lists the dimensions of the images you use in this template. All dimensions are in pixels. All images must be specified as `@2x` images for display on Apple Watch, so the point-based dimensions are half the listed size. The width of each image must be between the specified minimum and maximum (inclusive).

|Apple Watch Size|Width                                          |Height   |
|----------------|-----------------------------------------------|---------|
|38 mm           |22 pixels minimum ![](spacer) 64 pixels maximum|22 pixels|
|40 mm           |24 pixels minimum ![](spacer) 74 pixels maximum|24 pixels|
|41 mm           |25 pixels minimum ![](spacer) 78 pixels maximum|25 pixels|
|42 mm           |24 pixels minimum ![](spacer) 74 pixels maximum|24 pixels|
|44 mm           |28 pixels minimum ![](spacer) 84 pixels maximum|28 pixels|
|45 mm           |29 pixels minimum ![](spacer) 88 pixels maximum|29 pixels|

Instead of providing multiple images with different resolutions, you can provide a single, scaleable PDF asset. For more information, see `Manage Assets`.

## Topics

### Creating the Template

[`init(row1Column1TextProvider: CLKTextProvider, row1Column2TextProvider: CLKTextProvider, row2Column1TextProvider: CLKTextProvider, row2Column2TextProvider: CLKTextProvider, row3Column1TextProvider: CLKTextProvider, row3Column2TextProvider: CLKTextProvider)`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/init(row1Column1TextProvider:row1Column2TextProvider:row2Column1TextProvider:row2Column2TextProvider:row3Column1TextProvider:row3Column2TextProvider:))

Creates a template that has two columns of text.

[`init(row1ImageProvider: CLKImageProvider?, row1Column1TextProvider: CLKTextProvider, row1Column2TextProvider: CLKTextProvider, row2ImageProvider: CLKImageProvider?, row2Column1TextProvider: CLKTextProvider, row2Column2TextProvider: CLKTextProvider, row3ImageProvider: CLKImageProvider?, row3Column1TextProvider: CLKTextProvider, row3Column2TextProvider: CLKTextProvider)`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/init(row1ImageProvider:row1Column1TextProvider:row1Column2TextProvider:row2ImageProvider:row2Column1TextProvider:row2Column2TextProvider:row3ImageProvider:row3Column1TextProvider:row3Column2TextProvider:))

Creates a template that has a column of images and two columns of text.

[`+ (instancetype) templateWithRow1Column1TextProvider:(CLKTextProvider *) row1Column1TextProvider row1Column2TextProvider:(CLKTextProvider *) row1Column2TextProvider row2Column1TextProvider:(CLKTextProvider *) row2Column1TextProvider row2Column2TextProvider:(CLKTextProvider *) row2Column2TextProvider row3Column1TextProvider:(CLKTextProvider *) row3Column1TextProvider row3Column2TextProvider:(CLKTextProvider *) row3Column2TextProvider;`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/templateWithRow1Column1TextProvider:row1Column2TextProvider:row2Column1TextProvider:row2Column2TextProvider:row3Column1TextProvider:row3Column2TextProvider:)

Returns a template that has two columns of text.

[`+ (instancetype) templateWithRow1ImageProvider:(CLKImageProvider *) row1ImageProvider row1Column1TextProvider:(CLKTextProvider *) row1Column1TextProvider row1Column2TextProvider:(CLKTextProvider *) row1Column2TextProvider row2ImageProvider:(CLKImageProvider *) row2ImageProvider row2Column1TextProvider:(CLKTextProvider *) row2Column1TextProvider row2Column2TextProvider:(CLKTextProvider *) row2Column2TextProvider row3ImageProvider:(CLKImageProvider *) row3ImageProvider row3Column1TextProvider:(CLKTextProvider *) row3Column1TextProvider row3Column2TextProvider:(CLKTextProvider *) row3Column2TextProvider;`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/templateWithRow1ImageProvider:row1Column1TextProvider:row1Column2TextProvider:row2ImageProvider:row2Column1TextProvider:row2Column2TextProvider:row3ImageProvider:row3Column1TextProvider:row3Column2TextProvider:)

Returns a template that has a column of images and two columns of text.

### Setting the Complication Data

[`var row1ImageProvider: CLKImageProvider?`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row1ImageProvider)

An optional image to display at the beginning of the first row.

[`var row1Column1TextProvider: CLKTextProvider`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row1Column1TextProvider)

The text to display in the first column of the first row.

[`var row1Column2TextProvider: CLKTextProvider`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row1Column2TextProvider)

The text to display in the second column of the first row.

[`var row2ImageProvider: CLKImageProvider?`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row2ImageProvider)

An optional image to display at the beginning of the second row.

[`var row2Column1TextProvider: CLKTextProvider`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row2Column1TextProvider)

The text to display in the first column of the second row.

[`var row2Column2TextProvider: CLKTextProvider`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row2Column2TextProvider)

The text to display in the second column of the second row.

[`var row3ImageProvider: CLKImageProvider?`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row3ImageProvider)

An optional image to display at the beginning of the third row.

[`var row3Column1TextProvider: CLKTextProvider`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row3Column1TextProvider)

The text to display in the first column of the third row.

[`var row3Column2TextProvider: CLKTextProvider`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/row3Column2TextProvider)

The text to display in the second column of the third row.

[`var column2Alignment: CLKComplicationColumnAlignment`](/documentation/ClockKit/CLKComplicationTemplateModularLargeColumns/column2Alignment)

The alignment of the text in the second column.

## Relationships

### Conforms To

[`NSCopying`](/documentation/Foundation/NSCopying)

[`CVarArg`](/documentation/Swift/CVarArg)

[`Equatable`](/documentation/Swift/Equatable)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`Hashable`](/documentation/Swift/Hashable)

### Inherits From

[`CLKComplicationTemplate`](/documentation/ClockKit/CLKComplicationTemplate)

---

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)