There are different possibilities depending on how many layouts you have, here are
different examples.
If there aren't too many, I would work in the same activity and load the different layouts into panels, like the example TwoPanelLayouts, all the code is in the main module.
If you have many different layouts, but not very much code for each layout you could use different layouts for the same activity, like the example TwoActivityLayouts, all the code is in the main module. Even it that case, personaly I would use the previous principle.
If you have many different layouts with much code, you should use one activity per layout, like the example TwoLayoutActivities, the code for each layout is in it's own module, advantage, better overlook at the code and easier maintenance.
Would each layout become a separate activity with its own variables, etc
It depends on what variables you are speaking of.
If you use several activities. All views of the current activity are destroyed when loading a new activity and also all variables declared in Sub Globals.
General variables must be declared in Sub Process_Globals they remain when changing an activity. If you need to memorize layout parameters for an activity for it's next use, these parameters must be set to variables declared in Sub Process_Globals.
Best regards.