How to open and close windows and volumes programmatically in VisionOS


To open and close windows and volumes, add them to the app and use the openWindow and dismissWindow environment variables within a button.
The code for this tutorial can be found in the repository linked below on the 101/opening-and-closing-windows branch.
Please note that this tutorial focuses on closing windows and volumes through buttons external to the window or volume.
You can always use the x button at the bottom of a window or volume to close it.
Step One: Setup the Entities

Follow the tutorial below to learn how to open volumes and windows.
Step Two: Create a Dynamic Button

Create a new file that holds a button that opens and dismisses windows depending on the id that is passed in.
Please note that this functionality opens and closes volumes too.
Step Three: Update the Main Window

Update the window to use the button created in Step Two.
Step Four: Test

The simulator can now open windows.
Run the code and make sure you can open and close windows and volumes.

The simulator can now close windows.
Looking to learn more about VisionOS, Spatial Computing, Design and Technology?
Search our blog to learn more about visionOS, spatial computing, design and technology.