What's new in Xcode 13 Release Candidate

Xcode 13 RC has just been released: this build is almost identical with the previous beta.

New accessibility ForEach initializer

@available(iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0, *)
extension ForEach where ID == Data.Element.ID, Content : AccessibilityRotorContent, Data.Element : Identifiable {
  /// Creates an instance that generates Rotor content by combining, in order,
  /// individual Rotor content for each element in the data given to this
  /// `ForEach`.
  /// It's important that the `id` of a data element doesn't change unless you
  /// replace the data element with a new data element that has a new
  /// identity.
  /// - Parameters:
  ///   - data: The identified data that the ``ForEach`` instance uses to
  ///     create views dynamically.
  ///   - content: The result builder that generates Rotor content for each
  ///     data element.
  public init(_ data: Data, @AccessibilityRotorContentBuilder content: @escaping (Data.Element) -> Content)

The only difference in the SwiftUI SDK is the exposure of a ForEach accessibility initializer, if you haven't worked with accessibility rotors before, Majid Jabrayilov has a great overview.

This method was present from Xcode 13 beta 2, it was then moved to internal in beta 5, and it has been reverted back to public in this release candidate.

A look back to all Xcode 13 betas

This is a good time to overview all the changes in previous betas:


Xcode 13rc comes with the "old" macOS SDK (as macOS 12 will be released later this year): it's likely that we will get an Xcode 13.1 beta quite soon, that brings back the new macOS 12 SDKs and, perhaps, a sneak peek to upcoming changes for other SDKs, too.

Thank you for reading!

This article is part of a series exploring new SwiftUI features. We will cover many more during the rest of the summer: subscribe to Five Stars's feed RSS or follow @FiveStarsBlog on Twitter to never miss new content!


Further Reading

Explore SwiftUI

Browse all