保留随机视图之间的UILabel值

时间:2011-08-26 08:01:20

标签: iphone xcode view label uilabel

我正在为iPhone制作基于视图的测验应用,其中播放器在回答问题时在三个不同视图之间随机进行。他们在回答正确时得+1,而在回答错误答案时得-1。但在回答问题后,当你转到新的随机视图时,我需要UILabel显示上一个视图的分数。我该怎么做?

这是我的代码:

ViewController.h

@interface ViewController : UIViewController {

    IBOutlet UILabel *labelQuestion;
IBOutlet UILabel *labelAnswer1;
IBOutlet UILabel *labelAnswer2;
IBOutlet UILabel *labelAnswer3;
IBOutlet UILabel *labelScore;

int score;    

}

@property (nonatomic, retain) IBOutlet UILabel *labelScore;
@property (nonatomic) int score;


ViewController.m

@synthesize labelScore;
@synthesize score;

-(IBAction)CorrectAnswer; {

    score = score +1;
    labelScore.text = [NSString stringWithFormat:@"%i", score];

}

-(IBAction)WrongAnswer; {

    score = score -1;
    labelScore.text = [NSString stringWithFormat:@"%i", score];

}

3 个答案:

答案 0 :(得分:1)

将变量得分设为全局,即在AppDelegate中定义,然后您可以在整个应用程序中访问它。

答案 1 :(得分:1)

最快但很脏的方法是将它存储在app delegate中......如果你希望它在应用程序启动之间保持,请将其存储在用户默认值中。 但正如我所说,这很脏......

答案 2 :(得分:1)

由于它们是属性,因此当您创建下一个视图时,您可以将标签的文本设置为当前视图的文本,将分数设置为当前视图。