Is it possible to move on screen elements around at run time or at app start?

I have an old Arduino controller app that I am updating. It presents a series of controls that are used to control a connected Arduino. At present the position of the controls are fixed and, if possible, I would like to be able to move them at run time. The controls are contained in layout elements.

For example. From top to bottom there are 2 x buttons, 2 x sliders, 2 x text boxes.
I would like allow the user to move the controls to suit their own preference. Would need to move a set of elements, the actual control plus the surrounding layout elements.

Changing the element position on app start would also be OK.

Use a Canvas, you can place/drag drop ImageSprite to any where you want.

I hadn't considered canvas. Worth looking into. Thanks

For a small set of different pre-determined layouts (Portrait vs Landscape), you could set up alternate Arrangements, each containing a set of components similarly names (Label1Landscape vs Label1Portrait, etc.) and route all your blocks access through global variables (Label1Component) using generic (Any) blocks.

To switch layouts, you would set the other layout Arrangements invisible, make the selected Arrangement Visible, and load the global variables with the components for the chosen layout.