I was wondering if it is better to have multiple screens in a canvas app or to use with one screen with multiple containers whose visibility is controlled by a variable.
The benefit of using one screen is that you can use one header and one footer container throughout the app.
It's fairly easy to navigate through the application by using a variable to control which body container should be visible.
My question is to whether the one approach is better from a performance standpoint.
It probably doesn't matter which way you do it if you load your screens one by one. There is no limit on the number of screens but there is a limit on the overall app size. Video adds to the size. If the app size becomes an issue, many developers will leverage the Launch() function and break the app up if performance becomes an issue. Performance is probably more limited by the type of backend where the data is stored (SQL & Dataverse vs SharePoint vs Excel) and the type of functions used to retrieve it.
Great question @AlanMichas and one that I've pondered myself. Even with components it's easier and the app is lighter when you build a single screen.
@Drrickryp When you have a single screen app, I'm assuming that all "containers", as Alan puts it, are loaded at the same time (after App.OnStart maybe)? For example, if a single screen app that has seven galleries, whose visibility is controlled by variables, are all seven loaded when the app loads?
Antithetically, if these each of these galleries resided on their own respective screen, would they be loaded only after the screen is navigated to making the app's initial load a bit quicker? Or, are they also loaded when the app loads?
I initially had multiple screens for each canvas app but I eventually decided that it was easier to have one screen with a header, a footer and a body. When the powerapps team added groups and then containers I started using containers for the different parts of the app. I control the visibility of the containers by using an index which is linked to each menu item. Now that we create responsive apps its a pleasure. The biggest issue I've had is setting the font sizes for the different size screens. My concern is whether or not having one screen is less or more efficient.
Join us for the next call on August 17, 2022 at 8am PDT.
The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.