有人可以告诉我如何获取它之前创建的 UIView 控制器吗?我正在使用情节提要,并且我已经阅读了有关方法 instantiateViewControllerWithIdentifier 的苹果文档:但是这个文档说每次我调用这个方法时它都会创建一个新的 ViewController 实例我想要的是使用现有的。
我在故事板上寻找 UIViewController 单例。是否可以?
提前致谢!!
有人可以告诉我如何获取它之前创建的 UIView 控制器吗?我正在使用情节提要,并且我已经阅读了有关方法 instantiateViewControllerWithIdentifier 的苹果文档:但是这个文档说每次我调用这个方法时它都会创建一个新的 ViewController 实例我想要的是使用现有的。
我在故事板上寻找 UIViewController 单例。是否可以?
提前致谢!!
如果您只调用instantiateViewControllerWithIdentifier:
一次,然后将结果保存为某个强属性以供重复使用,那么您将只创建一次。
我有这样的解决方案:
' SingleController * B = [SingleController shareSingleController];
[self.navigationController pushViewController:con animated:YES];'
//push ControllerB
+(instancetype)shareSingleController
{
static SingleController * single;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
//a static instance from StoryBoard
single = (SingleController *)[[UIStoryboard storyboardWithName:@"SingleController" bundle:nil]instantiateInitialViewController];
});
return single;'
}
您可以测试,它是一个单一的实例。