Legacy SwiftUI Aspect Ratio

Prefer scaledToFit() or scaledToFill() over aspectRatio(contentMode:) with a constant content mode

  • Identifier: legacy_swiftui_aspect_ratio
  • Enabled by default: Yes
  • Supports autocorrection: Yes
  • Kind: idiomatic
  • Analyzer rule: No
  • Minimum Swift compiler version: 5.0.0
  • Default configuration:
    KeyValue
    severity warning

Non Triggering Examples

view.aspectRatio(ratio, contentMode: .fit)
view.aspectRatio(ratio, contentMode: .fill)
view.aspectRatio(contentMode: contentMode)
view.aspectRatio(contentMode: shouldFit ? .fit : .fill)
view.aspectRatio(contentMode: CustomMode.fit)
view.scaledToFit()
view.scaledToFill()

Triggering Examples

view.aspectRatio(contentMode: .fit)
view.aspectRatio(contentMode: .fill)
view.aspectRatio(contentMode: ContentMode.fit)
view.aspectRatio(contentMode: ContentMode.fill)
aspectRatio(contentMode: .fit)
aspectRatio(contentMode: .fill)