I never have used ViewSwitcher before. I read the documentation on the class. And I think ViewSwitcher is good for switching between 2 different views or layouts, only 2. More than 2, and you have to create another ViewSwitcher. The benefits that I see of ViewSwitcher are:
- All the views (only 2 at most) and its objects are kept in memory. So it's fast.
- It is meant to be fast since it extends ViewAnimator, made for animation.
Now for Fragments...It is commonly used by developers like myself. It has good support for managing many (not just 2) layouts. With help of FragmentManager, you can add, replace, or search for fragments. The benefits of Fragments are:
- Management of UI is robust.
- Android framework and system will manage memory to allow other apps to run. As a warning, this may be an issue with using Fragments and handling objects in memory.
- It is memory efficient and I think it's quite fast. Coding fragments may be more of an issue. However since soo many developers use it, you have much support, like from me, in the SO community and Internet.
Good luck and have fun with Android :-)