What do you want to achieve?
Create a pop-up screen that can be rendered over any currently active screen.
Do you see alternative options and workaround to achieve it?
The popup could be built into a component, but that component would have to be attached to every screen. Or we could take the user to a new screen just for this purpose, but this feels like more of an interruption.
Mention some use cases
Use-cases include a low battery warning, bad charger / USB cable warning, and other error messages.

One solution supported by SquareLine Studio would be to create it as a component, as you do it now, and instead of pre-creating/copying it for every screen redundantly and hiding/showing technique, you can create/destruct it on the fly by LVGL code in the export when necessary. Or you can create it on an empty screen, and change its parent to the current screen with lv_obj_set_parent(object,new_parent)
.
Yet another alternative could be to use the ‘top’ layer of lvgl, i.e. create your popup panel on the lv_layer_top()
, and then you can show/hide it any time, no matter what screen is in the background.