这个问题的目的是找到处理许多ViewControllers导航的最佳实践,可以由应用程序中的许多其他ViewControllers导航。我正在处理的应用就是这样,我有3个ViewControllers,可以由3-4个其他ViewControllers导航到每个。在过去,我总是根据需要在每个ViewController中编写导航代码,但现在我认为可能有更好,更清晰的方法来处理所需的代码更少。我倾向于创建一个NavigationClass,如下所述,但我会听到其他人对如何去做的想法。
我可以想出3种不同的方法来解决这个问题,但我想知道是否有人有任何不同的想法。我想的方式是:
1。创建NavigationClass: Navigation类可以导入任何作为访问点的ViewControllers。 NavigationClass将包含以下方法:
+(void)pushToDetailViewControllerWithObject:(MyObject *)obj fromNavigationController:(UINavigationController *)navController{
DetailViewController *VC = [[DetailViewController alloc]init];
VC.object = obj;
[navController pushToViewController:VC animated:true];
}
导航类将为每个具有多个访问点的ViewController包含类似的功能。
2。只需调用所有ViewControllers中的方法: 这就是我一直在做的事情,我觉得通过这样做,我一遍又一遍地重写相同的代码,虽然有些人可能不同意我,但我认为这不是最好的解决方案。 / p>
第3。故事板segues和prepareForSegue
我从来没有热衷于StoryBoard segues,因为我现在开始少用StoryBoards,但我知道有些人喜欢这样做。
无论如何,请告诉我您对NavigationClass的看法,或者如果您有更好的方法可以解决这个问题,
干杯
Obj C或Swift答案欢迎