为什么不允许推送UINavigationController



我很清楚UINavigationController不应该被推送。但我很好奇它是为设计的

为什么不允许推送UINavigationController?

UINavigationController是一个视图控制器,用于管理其他视图控制器的堆栈。当您"推"视图控制器时,您将其推到的堆栈由导航控制器管理。将导航控制器推到自己的堆栈或其他导航控制器的堆栈上似乎都有问题,原因有很多。例如,从用户的角度来看,将导航控制器推到另一个导航控制器的堆栈上可能看起来像是同时添加一个全新的视图控制器堆栈——这会使UI变得不稳定和不可预测。

你当初想这么做的原因是什么?如果你能通过描述你试图实现的目标来扩展你的问题,也许有人可以帮助你找到更好的方法。

最新更新