In order to prevent multiple chat interfaces and deep nesting in WeChat and many IM apps, and to unify operating habits, WeChat and many IM apps have a limit of "Every time you enter the chat interface, enter from the conversation list." Several apps I made before are opening the same The same goes for the chat interface. There is a public method for opening the chat interface, which can be called from any interface. Or define a route for the chat interface. For example: + [ChatViewController openWithUser:(User *)user];
Take WeChat’s app structure as an example. There is navigation at the top, tabBar at the bottom, and only one conversation list. The logic of opening the chat interface is roughly as follows:
In order to prevent multiple chat interfaces and deep nesting in WeChat and many IM apps, and to unify operating habits, WeChat and many IM apps have a limit of "Every time you enter the chat interface, enter from the conversation list." Several apps I made before are opening the same The same goes for the chat interface.
There is a public method for opening the chat interface, which can be called from any interface. Or define a route for the chat interface.
For example:
+ [ChatViewController openWithUser:(User *)user];
Take WeChat’s app structure as an example. There is navigation at the top, tabBar at the bottom, and only one conversation list. The logic of opening the chat interface is roughly as follows:
To get the root controller, session list, and current chat window, you can use global variables or use code to check: