ios,像android一样维护单个viewcontroller?
在android中,使用以下代码似乎只能保留一个活动实例ios,像android一样维护单个viewcontroller?,android,ios,Android,Ios,在android中,使用以下代码似乎只能保留一个活动实例 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); 如何在ios中实现相同的效果?没有标准的方法可以做到这一点,但您可以通过以下方式将视图控制器设置为单体: + (instancetype *)sharedViewController { static FooViewController *sharedViewContr
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
如何在ios中实现相同的效果?没有标准的方法可以做到这一点,但您可以通过以下方式将视图控制器设置为单体:
+ (instancetype *)sharedViewController {
static FooViewController *sharedViewController = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
sharedViewController = [[FooViewController alloc] init];
});
return sharedViewController;
}
然后,您可以使用以下方法获取共享实例:
FooViewController *fooViewController = [FooViewController sharedViewController];
谢谢你的意见。这当然是一条信息。我应该如何
重用
singleton viewcontroller?如果我按下singleton viewcontroller,它会自动从导航堆栈中删除吗?我不知道Android代码到底做了什么,所以我想我可能理解错了你的问题。它是否创建活动的新实例并取消分配旧实例?或者只保留一个在任何地方都可用的实例?它保留一个实例。我不知道安卓到底是怎么做的:(