NSCoder游戏数据存储/检索健全性检查

时间:2014-03-26 06:07:42

标签: ios cocos2d-iphone nscoder

只是希望对此代码进行健全性检查,以便存储和检索iOS 7的用户数据。它不起作用,但我没有看到问题。

GameData.h

#import <Foundation/Foundation.h>

@interface GameData : NSObject<NSCoding>
{
    int HighScoreGD;
}

@property (readwrite,assign) int HighScoreGD;

@end

extern GameData *gGameData;

GameData.m

#import "GameData.h"

GameData *gGameData;


@implementation GameData

@synthesize HighScoreGD;

-(void)encodeWithCoder:(NSCoder *)coder {
    [coder encodeInt:HighScoreGD forKey:@"HighScoreGD"];
}


-(id)initWithCoder:(NSCoder *)coder {
    if((self = [super init])) {
        HighScoreGD = [coder decodeIntForKey:@"HighScoreGD"];    
    }
    return self;
}

-(id) init {
    if((self = [super init])) {    
    }
    return self;
 }

 -(void) dealloc {
    //[super dealloc];
 }

 @end

存储数据:

gGameData.HighScoreGD = pointsHigh;

检索数据:

pointsHigh = gGameData.HighScoreGD;

我过去曾在一堆旧游戏概念(cocos2d)中使用过它并且运行正常。

没有收到编译错误。只是简单地不存储数据。

我在几年内没有使用过这段代码而且它没有用。 iOS7或cocos2d v3是否改变了NSCoder的使用方式?

或者我在某个地方犯了一个愚蠢的错误?

提前致谢。

0 个答案:

没有答案