Я пытаюсь использовать singleton для хранения переменных, которые будут использоваться в нескольких контроллерах представлений. Мне нужно получить переменные, а также установить их. Как вызвать метод в одноэлементном режиме, чтобы изменить переменные, хранящиеся в синглетоне.Попытка изменить переменные в одноэлементном режиме с помощью метода
total+=1079;
[var setTotal:total];
где вар является
static Singleton *var = nil;
мне нужно обновить общее и отправить на setTotal метод внутри синглтона. Но когда я делаю это, метод setTotal никогда не получает доступа. Методы get работают, но метод setTotal этого не делает. Пожалуйста, дайте мне знать, что делать. Ниже приведены некоторые из моего исходного кода
//
// Singleton.m
// Rolo
//
// Created by on 6/28/12.
// Copyright (c) 2012 Johnny Cox. All rights reserved.
//
#import "Singleton.h"
@implementation Singleton
@synthesize total,tax,final;
#pragma mark Singleton Methods
+ (Singleton *)sharedManager
{
static Singleton *sharedInstance = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
sharedInstance = [[Singleton alloc] init];
// Do any other initialisation stuff here
});
return sharedInstance;
}
+(void) setTotal:(double) tot
{
Singleton *shared = [Singleton sharedManager];
shared.total = tot;
NSLog(@"hello");
}
+(double) getTotal
{
Singleton *shared = [Singleton sharedManager];
NSLog(@"%f",shared.total);
return shared.total;
}
+(double) getTax
{
Singleton *shared = [Singleton sharedManager];
NSLog(@"%f",shared.tax);
return shared.tax;
}
@end
//
// Singleton.h
// Rolo
//
// Created by on 6/28/12.
// Copyright (c) 2012 Johnny Cox. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface Singleton : NSObject
@property (nonatomic, assign) double total;
@property (nonatomic, assign) double tax;
@property (nonatomic, assign) double final;
+ (id)sharedManager;
+(double) getTotal;
+(void) setTotal;
+(double) getTax;
@end
Спасибо, что фиксированная моя проблема. –