整个 app 里只用到了一个 UINavigationController,因此另行封装一个单例类 VCManager,在类中获取 UINavigationController 实例,利用该实例进行页面的 push,pop 等操作。优点是利用 VCManager 在所有的地方都可以实现 push,pop 操作。如下图一个 cell 里两个 button:登录和注册,它们对应的 push 操作都是在 cell 内部通过调用 [[VCManager mainManager] pushVC:vc animated:YES]; 实现。 在任何需要的地方使用 VCManager 封装的方法实现跳转,避免了过多的代理和 block,代码更加美观