<!--
{
  "availability" : [
    "iOS: 7.0.0 -",
    "iPadOS: 7.0.0 -",
    "macCatalyst: 13.1.0 -",
    "tvOS: -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UIViewController/edgesForExtendedLayout",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(cs)UIViewController(py)edgesForExtendedLayout"
  },
  "title" : "edgesForExtendedLayout"
}
-->

# edgesForExtendedLayout

The edges that you extend for your view controller.

```
var edgesForExtendedLayout: UIRectEdge { get set }
```

## Discussion

Instead of this property, use the safe area of your view to determine which parts of your interface are occluded by other content. For more information, see the [`safeAreaLayoutGuide`](/documentation/UIKit/UIView/safeAreaLayoutGuide) and [`safeAreaInsets`](/documentation/UIKit/UIView/safeAreaInsets) properties of [`UIView`](/documentation/UIKit/UIView).

In iOS 10 and earlier, use this property to report which edges of your view controller extend underneath navigation bars or other system-provided views. The default value of this property is [`all`](/documentation/UIKit/UIRectEdge/all), and it is recommended that you do not change that value.

If you remove an edge value from this property, the system does not lay out your content underneath other bars on that same edge. In addition, the system provides a default background so that translucent bars have an appropriate appearance. The window’s root view controller does not react to this property.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)