我正在与我的团队成员就 popToViewController 发生争执。
对我来说最好的方法是 我可以弹出到特定的 ViewController 吗?
但他认为我们应该创建 viewController 的静态实例,然后调用
-(void)takeToPreviousViewController {
if([IVPreviousViewController sharedInstance]) {
[self.navigationController popToViewController:[IVPreviousViewController sharedInstance] animated:YES];
}
}
我强烈采用这种方法,因为我们在 IVPreviousViewController 中创建了一个与 currentViewController 无关的公共方法。我们应该始终避免像这样暴露方法。
谁能指出我最好的方法的充分理由。
更新:
IVPreviousViewController.h
__weak static IVPreviousViewController * staticEventDetailViewController;
+(IVPreviousViewController *)sharedInstance;
IVPreviousViewController.m
+(IVPreviousViewController *)sharedInstance {
return staticEventDetailViewController;
}
这种方法的原因 -在我们的 viewController 的特定用例中,它必须 popbackto IVPreviousViewController