---
title: EKRecurrenceRule
framework: eventkit
role: symbol
role_heading: Class
path: eventkit/ekrecurrencerule
---

# EKRecurrenceRule

A class that describes the pattern for a recurring event.

## Declaration

```swift
class EKRecurrenceRule
```

## Mentioned in

Creating a recurring event

## Overview

Overview After you create a recurrence rule, assign it to an event with the method of EKEvent. Recurrence rules can have an end, represented by an EKRecurrenceEnd object. The end can be based on a specific date or a maximum number of occurrences. note: It is currently not possible to directly modify an EKRecurrenceRule or any of its properties. This functionality is achieved by creating a new EKRecurrenceRule and setting an event or reminder to use the newly created rule.

## Topics

### Creating a Basic Recurrence Rule

- [EKSpan](eventkit/ekspan.md)
- [init(recurrenceWith:interval:end:)](eventkit/ekrecurrencerule/init(recurrencewith:interval:end:).md)

### Creating a Complex Recurrence Rule

- [init(recurrenceWith:interval:daysOfTheWeek:daysOfTheMonth:monthsOfTheYear:weeksOfTheYear:daysOfTheYear:setPositions:end:)](eventkit/ekrecurrencerule/init(recurrencewith:interval:daysoftheweek:daysofthemonth:monthsoftheyear:weeksoftheyear:daysoftheyear:setpositions:end:).md)

### Accessing Recurrence Rule Properties

- [EKRecurrenceFrequency](eventkit/ekrecurrencefrequency.md)
- [calendarIdentifier](eventkit/ekrecurrencerule/calendaridentifier.md)
- [recurrenceEnd](eventkit/ekrecurrencerule/recurrenceend.md)
- [frequency](eventkit/ekrecurrencerule/frequency.md)
- [interval](eventkit/ekrecurrencerule/interval.md)
- [firstDayOfTheWeek](eventkit/ekrecurrencerule/firstdayoftheweek.md)
- [daysOfTheWeek](eventkit/ekrecurrencerule/daysoftheweek.md)
- [daysOfTheMonth](eventkit/ekrecurrencerule/daysofthemonth.md)
- [daysOfTheYear](eventkit/ekrecurrencerule/daysoftheyear.md)
- [weeksOfTheYear](eventkit/ekrecurrencerule/weeksoftheyear.md)
- [monthsOfTheYear](eventkit/ekrecurrencerule/monthsoftheyear.md)
- [setPositions](eventkit/ekrecurrencerule/setpositions.md)
- [EK_LOSE_FRACTIONAL_SECONDS_DO_NOT_USE()](eventkit/ek_lose_fractional_seconds_do_not_use().md)

### Initializers

- [init(recurrenceWithFrequency:interval:daysOfTheWeek:daysOfTheMonth:monthsOfTheYear:weeksOfTheYear:daysOfTheYear:setPositions:end:)](eventkit/ekrecurrencerule/init(recurrencewithfrequency:interval:daysoftheweek:daysofthemonth:monthsoftheyear:weeksoftheyear:daysoftheyear:setpositions:end:).md)
- [init(recurrenceWithFrequency:interval:end:)](eventkit/ekrecurrencerule/init(recurrencewithfrequency:interval:end:).md)

## Relationships

### Inherits From

- [EKObject](eventkit/ekobject.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Recurrence

- [Creating a recurring event](eventkit/creating-a-recurring-event.md)
- [EKRecurrenceDayOfWeek](eventkit/ekrecurrencedayofweek.md)
- [EKRecurrenceEnd](eventkit/ekrecurrenceend.md)
