У меня возникла проблема при разработке приложения для iPhone.Я должен сделать викторину.Тест находится в NSArray, и каждый вопрос имеет заголовок, некоторые ответы и оценку по ответам.Вся эта информация находится в NSMutableArray.
Когда я пытаюсь вывести значение «оценка» для примера, я получаю NULL, а не число.
Пример: MYCOMMON.H
#import <Foundation/Foundation.h>
#import "FBConnect/FBConnect.h"
@interface MyCommon : NSObject <FBRequestDelegate,FBDialogDelegate,FBSessionDelegate>
{
NSArray *quizz;
int iCurrentQuestion;
int iScore;
int iRep;
NSArray *permissions;
};
+ (MyCommon *)Singleton;
@property (nonatomic, retain) NSArray *quizz;
@property (assign) int iCurrentQuestion;
@property (retain,nonatomic) NSArray *permissions;
@property (assign) int iScore;
@property (assign) int iRep;
@end
MYCOMMON.M
@implementation MyCommon
static MyCommon * SingletonManager = nil;
@synthesize iCurrentQuestion, iScore, iRep;
@synthesize quizz;
-(id)init {
if (self = [super init]) {
iCurrentQuestion = 0;
iRep = 0;
iScore = 0;
permissions = [[NSArray arrayWithObjects:@"publish_stream",nil] retain];
}
return self;
}
-(void)dealloc {
// Do things
[ super dealloc ];
}
- (int)GetScoreForReponse
{
MyCommon *pCommon = [MyCommon Singleton];
NSLog(@"GetScoreForReponse iScore : %@, pCommon.iScore);
NSDictionary *dataItem = [quizz objectAtIndex:iCurrentQuestion];
int add_score = 0;
if (iRep == 1)
{
add_score = [[dataItem objectForKey:@"score1"]intValue];
}
else if (iRep == 2)
{
add_score = [[dataItem objectForKey:@"score2"]intValue];
}
else if (iRep == 3)
{
add_score = [[dataItem objectForKey:@"score3"]intValue];
}
else if (iRep == 4)
{
add_score = [[dataItem objectForKey:@"score4"]intValue];
}
else if (iRep == 5)
{
add_score = [[dataItem objectForKey:@"score5"]intValue];
}
else
NSLog(@"error !");
return add_score;
}
Спасибо за помощь!