Multitasking is one of the many great features of iPadOS and gives people options and flexibility in how they want to interact with your app and others on iPad. They can browse your app in full screen, put it next to another app in Split View, pull it up in Slide Over, or even view multiple instances of your app side by side. Here are a few ways you can improve the look and feel of your iPad app for multitasking and multiple windows.
Make your app a multitasking master

Whether your app is running by itself, in a Slide Over pane, or side by side in Split View, it should always support a great multitasking experience. People expect apps on iPad to seamlessly adjust between size classes as they add or remove apps on their screen. When you design an adaptive UI, you can ensure that your controls and views remain visible and useable, whether your app is full screen or displaying in a compact view.
To make your view controllers and views responsive to changes in the iOS interface environment, override the traitCollectionDidChange(_:) method from the trait environment protocol. To customize view controller animations in response to interface environment changes, override the willTransition(to:with:) method of the UIContentContainer protocol.
Learn more about UI trait collections >
You can further guarantee people a flexible, adaptive experience by using tools like Auto Layout and safe area insets to ensure your app looks great no matter how it’s being used.
Read more about how you can make your app look great on every screen >
Multiply your windows

Starting with iPadOS 13, you can add support for creating multiple instances of your app. When you support multiple windows, your app gains additional versatility, allowing people to use it alongside itself or multiple other applications. For example, someone using a to-do app could view two lists from that app side by side in Split View; they could also create multiple Split View instances that pair one of their to-do lists alongside a Safari window, while another to-do list sits next to Mail.

To add multiple windows to your app, you create scenes for each instance of your user interface using UIScene. When you add support for UIScene, consider also implementing modern state restoration, which lets people come right back to what they were working on in your app rather than resetting to the main screen.
Learn more about modern state restoration >
Additionally, if you add multiple windows to iPad, that paves the way for multiple window support on Mac Catalyst if you’re also building a Mac app.
Learn more about designing for multiple windows >
Learn more about implementing multiple windows in your app >

Resources

Get started with multitasking >
Learn more about scenes >
Explore a sample project for supporting multiple windows on iPad >
Watch “Window Management in Your Multitasking App” >
Watch “Introducing Multiple Windows on iPad” >
Watch “Architecting Your App for Multiple Windows” >


More...