Guideline 4.0
Guideline 4.0 - Design: Broken Layout on iPad
Our Take
Your app did not display correctly when reviewed on iPad. Common issues include a letterboxed iPhone-only layout, elements overlapping or stretching incorrectly on larger screens, missing landscape orientation support, and failure to adapt to Split View or Slide Over multitasking modes. This is especially frustrating for iOS developers who only support iPhone since reviewers always review all apps on iPads. If your app is available on iPad (including via iPhone compatibility mode), Apple expects it to use the full screen and adapt to different size classes.
Resolution Guide
**Enable iPad as a deployment target** — In Xcode, go to your target’s General tab → Deployment Info and check iPad. Ensure the `UIDeviceFamily` key in Info.plist includes `2` (iPad).
**Support all orientations** — Enable all four orientations (portrait, landscape left/right, upside down for iPad) in your target settings. Test each one.
**Use adaptive layouts** — Replace fixed-width constraints with flexible ones. In SwiftUI, use `GeometryReader`, `.frame(maxWidth:)`, and horizontal size class detection:
```swift
@Environment(\.horizontalSizeClass) var sizeClass
```
In UIKit, use Auto Layout with proper constraints and size class overrides in Interface Builder.
**Adopt sidebar navigation on iPad** — On larger screens, replace the bottom tab bar with a `NavigationSplitView` (SwiftUI) or `UISplitViewController` (UIKit) that shows a sidebar.
**Support multitasking** — Ensure `UISupportsFullScreen` is NOT set to `YES` in Info.plist (this disables multitasking). Test your app in 1/3, 1/2, and 2/3 Split View widths.
**Test on multiple iPad sizes** — Test on iPad mini, iPad Air, and iPad Pro 12.9″ in the simulator. Each has different point dimensions.
**Leverage extra space** — Use multi-column layouts, larger touch targets, and richer detail views on iPad. Don’t just scale up the iPhone layout.
**Include iPad screenshots in App Store Connect** — Add iPad-specific screenshots to show reviewers the optimized experience.
Example Rejection Email
Consider Appealing
If your app is iPhone-only by design, you can appeal and explain why iPad optimization is not applicable — but Apple may still require basic compatibility. If your app is marked as Universal, fix the layout rather than appealing.
Before & After
// Fixed-width layout that breaks on iPad
VStack {
Text("Dashboard")
ScrollView {
VStack(spacing: 12) {
ForEach(items) { item in
ItemRow(item: item)
.frame(width: 375) // iPhone width hardcoded
}
}
}
}
// Adaptive layout using NavigationSplitView for iPad
struct ContentView: View {
@Environment(\.horizontalSizeClass) var sizeClass
@State private var selectedItem: Item?
var body: some View {
NavigationSplitView {
List(items, selection: $selectedItem) { item in
ItemRow(item: item)
}
.navigationTitle("Dashboard")
} detail: {
if let selectedItem {
ItemDetailView(item: selectedItem)
} else {
Text("Select an item")
.foregroundStyle(.secondary)
}
}
}
}
What changed: NavigationSplitView automatically provides a sidebar + detail layout on iPad and collapses to a stack on iPhone. Remove all hardcoded widths and let the system manage the available space.
Community Solutions · 0
Sign in to share your solution.
More Guideline 4 (Design) rejections
- Guideline 4.0 - Design: App Does Not Include iOS Features
- Guideline 4.0 - Design: App Looks Like a Website
- Guideline 4.0 - Design: Apple Pay Button Not Following Guidelines
- Guideline 4.0 - Design: Blurry Icons or Low-Resolution Assets
- Guideline 4.0 - Design: Content Clipped by Notch or Safe Area
- Guideline 4.0 - Design: Crowded or Poor Layout