<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AppIntents",
  "identifier" : "/documentation/AppIntents/UISceneAppIntent/performNavigation(forScene:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "App Intents",
      "UIKit"
    ],
    "preciseIdentifier" : "s:17_AppIntents_UIKit07UISceneA6IntentP17performNavigation8forSceneySo0D0C_tF"
  },
  "title" : "performNavigation(forScene:)"
}
-->

# performNavigation(forScene:)

Tells the app intent that the system is about to show the specified scene.

```
func performNavigation(forScene scene: UIScene)
```

## Parameters

`scene`

The scene the system displays when the app runs in the foreground.

## Discussion

If the delegate for `scene` doesn’t implement the [`scene(_:willPerformAppIntent:)`](/documentation/AppIntents/AppIntentSceneDelegate/scene(_:willPerformAppIntent:))
method of the [`AppIntentSceneDelegate`](/documentation/AppIntents/AppIntentSceneDelegate) protocol, the system calls this method before running the
app intent. Use this method to perform any scene-related tasks before the system brings the scene
to the foreground. For example, you might use this method to configure the views of the scene with
the app intent’s content. The system calls this method before calling the app intent’s [`perform()`](/documentation/AppIntents/AppIntent/perform()) method.

If you don’t implement this method in your app intent type, the default implementation does nothing.

---

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)