首页 > 代码库 > IOS传值之单例传值

IOS传值之单例传值

在IOS应用中,不同view及应用中经常会有传值和变量共享,有几种方式可以实现:

1.extern方式

2.单例模式

3.delegate方式


 单例模式顾名思义就是只有一个实例,它确保一个类只有一个实例,并且自行实例化并向整个系统提供这个实例。它经常用来做应用程序级别的共享资源控制。这个模式使用频率非常高,通过一个单例类,可以实现不同view之间的参数传递


#import <Foundation/Foundation.h>

@interface Session : NSObject
@property (strong,nonatomic) NSString *singleValue;
//实现单例方法
+ (Session *) GetInstance;
@end


#import "Session.h"

@implementation Session
// 单例对象
static Session *instance;

// 单例
+ (Session *) GetInstance {
    @synchronized(self) {
        if (instance == nil) {
            instance = [[self alloc] init];
            
        }
    }
    return instance;
}
-(id) init
{
    if (self = [super init]) {
        self.singleValue = http://www.mamicode.com/[[NSString alloc] init];>

然后在需要使用单例的类import 这个单例类

Session *session = [Session GetInstance];

session.singleValue = http://www.mamicode.com/@"好神奇阿!";

NSString *value = http://www.mamicode.com/session.singleValue;


IOS传值之单例传值