SuperAPI AI Directory

ios-ui-navigation

General & other

View repository

Updated 10-15 22:13

About this skill

iOS UI & Layout Standards

Priority: P0 (CRITICAL)

Implementation Guidelines

Auto Layout

  • Code-Based Layout: Prefer programmatic layout using NSLayoutAnchor or SnapKit over Storyboards for better source control.
  • Safe Area: Always respect view.safeAreaLayoutGuide.
  • UIStackView: Use for linear layouts to reduce constraint complexity.

UIKit Best Practices

  • View Lifecycle: Perform layout adjustments in viewWillLayoutSubviews or updateConstraints.
  • Reusable Views: Extract complex UI into custom UIView subclasses.
  • Image Optimization: Use SF Symbols for icons. Preferred vector (PDF/SVG) for custom assets.
  • SwiftUI Bridge: Use UIViewRepresentable or UIViewControllerRepresentable to host UIKit in SwiftUI.

Human Interface Guidelines (HIG)

  • Accessibility: Support Dynamic Type and provide meaningful accessibilityLabel.
  • Feedback: Use UINotificationFeedbackGenerator for haptic feedback on actions.
  • Margins: Follow standard system margins (typically 16-20pt).

Anti-Patterns

  • No CGRect(x:y:w:h): Use Auto Layout.
  • No complex constraint logic in VC: Use UIStackView or custom views.
  • No Blank Screens: Use skeleton views or UIActivityIndicatorView.

References

Canonical response anchors

When this skill applies, preserve the following domain terminology or equivalent concrete examples in the answer when relevant:

  • UIViewControllerRepresentable
  • UIViewRepresentable

Remediation anchors

  • Remediation anchors: NSLayoutAnchor, safeAreaLayoutGuide, UIStackView