有人可以告诉我如何获得它之前创建的UIView控制器吗?我正在使用storyboard并且我已经阅读了关于方法instantiateViewControllerWithIdentifier的苹果文档:但是这个doc说每次我调用这个方法它都会创建一个新的实例ViewController和我想要的是使用现有的。
我在故事板上寻找UIViewController单例。有可能吗?
提前致谢!!
答案 0 :(得分:2)
如果您只调用instantiateViewControllerWithIdentifier:
一次,然后将结果保存为某个地方的强大属性以供重复使用,那么您只会创建一次。
答案 1 :(得分:0)
我有这样的解决方案:
' 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;'
}
你可以测试它的单个实例。