Unity asset store has a lot of assets. You can find assets for almost anything at this point. But you need to be really picky as some assets can cause errors directly or indirectly. Some can cause weird behaviors unlike advertised. But some assets are awesome. I have been using DoozyUI for a year and I couldn’t be happier. It speeds up my UI workflow a lot! And it is really optimized.
You need to have one MasterCanvas in the scene which is the parent of all the UI. Under that you can have different Panels for different screens. Calling it a panel would be undermining it. It has its own canvas which inherits the main canvas. And here’s why that’s important.
If in a frame any UI object is modified, it marks the canvas it is under as dirty. And thus Unity renders all the elements under that canvas in that frame. So if you have one canvas for your game under which you have a text that’s counting down the time. If you update that text every frame, the whole canvas will be rendered every frame. So when you use DoozyUI, it automatically solves the issue for you.
Lets say you have a game set up using DoozyUI. You want to move from menu screen to settings screen. You can just call the simple Show and Hide functions that’s within the view. Along with that you can setup Show and Hide animations from a huge collection of animations and setup sounds with the animations in a matter of clicks. Now when you simply call show and hide animations it does everything you told it to do in one call. It has looping, hover, click etc animations database for buttons. If you get a hang of the node based system in DoozyUI you can do everything mentioned above without writing a single line of code.
It also provides swipe detection, double click detection, orientation detection, UI drawers and a lot more! I highly recommend using this and save hours of time!
Whatever you do, do not use Unity Animation system for UI animations unless absolutely necessary. Performance wise it is really bad. Try DoTween to animate instead if you do not want to use DoozyUI. It offers tweening which is a short form of betweening using which you can do animations from script very easily without having to open animator at all.
If you are an intermediate or advanced programmer learn Editor Scripting to make your life even more easier. More on that later.