Having a hard time wrapping my head around tabs, views, states

Sorry, this one isn’t quite a code related question, I think. I’ve read the ion-nav-views information in the Docs, I’ve looked over the tabs sample project, I’ve read even one or two blog posts about views in ionic from external sources.

But I still don’t understand how they work or how to use them. Docs and tutorials make it seem like views are nested inside tabs (which would be perfect for me). The source code in the tabs project makes it look like there is no nesting at all, and views, tabs, and everything else is in the same level of the hierarchy.

States seem a bit unintuitive to me (At what level, if any, are they controlling what displays in the device? Are there “sub-states”? What do I do to control them?)

Finally, why multiple controllers? The app’s data is used in all tabs/views, why should I separate the functions that I use to control it?

The screens in my app could be described in the following hierarchy:

- Main //Tab
    - Events (by Date)  // View
    - Events (by Category)  // View
        - Category List     // Subview? Is that even a thing?
        - List of events within the category selected in Category List // Subview?
    - Events (by neighborhood) //View
- Favorite Events //Tab

The app currently exists with no View separation, using ng-ifs instead to decide what should or should not be visible. It does have Tabs, though, but I don’t use the StateProvider to make it work, rather using IonicTabsDelegate to switch tabs when I need to. This might be causing some problems (such as a bug I’m having where collection-list stops working permanently if its parent “disappears” due to the ng-if), and from what I gather is not recommended at all. So I want to get Views working, I just don’t understand how.