将controller设置为单例

0.目的
将A(UIViewController),配置为单例。

1.在A的.h文件中定义方法
1.1创建单例

+ (instancetype)sharedManager;

1.2销毁单例

- (void)removeSharedManager;

2.在A的.m中实现方法
2.1定义静态变量

static dispatch_once_t onceToken;
static A *sManger = nil;

2.2创建单例

+ (instancetype)sharedManager
{
    dispatch_once(&onceToken, ^{
        sManger = [[A alloc] init];
    });
    return sManger;
}

2.3销毁单例,不需要可以不用

- (void)removeSharedManager
{
    onceToken = 0;
    sManger = nil;
}

3.单例调用

A *aVC = [A  sharedManager];
[self.navigationController pushViewController:aVC animated:nil];

你可能感兴趣的:(将controller设置为单例)