доброго дня
вот такой вопрос - где ошибка?
Есть класс
Settings в нём я делаю настройки
как статус одной из настроек (on/off) использую NSString и храню её в NSUserDefaults.
Всё вроде нормально хранится - но когда хочу увидеть этот статус в другом классе
Game то выводит вместо строки (null)
Settings.h
Код:
@interface Settings : UIViewController {
NSString *sound_Switch_status;
}
- (IBAction)soundOnOff:(id)sender; //вырубаем звук
@property (strong,nonatomic)NSString *sound_Switch_status;
Settings.m
Код:
#import "Settings.h"
@implementation Settings
@synthesize sound_Switch_status;
......
- (void)viewDidLoad
{
[super viewDidLoad];
sound_Switch_status=[[NSUserDefaults standardUserDefaults]objectForKey:@"s2"];
}
.....
- (IBAction)soundOnOff:(id)sender {
NSUserDefaults *s2 =[NSUserDefaults standardUserDefaults];
....
sound_Switch_status=@"on";
[s2 setObject: sound_Switch_status forKey:@"s2"];
NSLog(@"status: %@",sound_Switch_status);//проверяю
....
}
теперь статус @"on" хранится под ключём
s2
Games.h
Код:
.....
#import "Settings.h"
...
Games.m
Код:
.....
- (void)viewDidLoad
{
[super viewDidLoad];
Settings *status_from_Settings=[[Settings alloc]init];
NSLog(@"%@",[NSString stringWithFormat:@"%@",status_from_Settings.sound_Switch_status]); // вот тут то оно и выводит (null)
}
зы: странно что в 4.3 у меня всё нормально работало
а в 5 ке выводит (null)
][елп