在最后一行@implementation 行不断收到错误,说实现不完整。不确定是什么问题。什么会导致这个?我也贴了标题。
添加了 .m 文件中的其余代码。
#import "mmViewController.h"
@interface mmViewController ()
-(void)timerFired:(NSTimer*)theTimer;
@end
@implementation mmViewController
@synthesize remainingTime, playerScore, scrambledWord;
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(void)viewDidLoad
{
[super viewDidLoad];
//Do any additional setup after loading the view, typically from a nib.
//Initialize the game model
gameModel = [[mmScramblerModel alloc] init];
//Display the time, score and scrambled word
remainingTime.text = [NSString stringWithFormat:@"%i", gameModel.time];
playerScore.text = [NSString stringWithFormat:@"%i", gameModel.score];
scrambledWord.text = [gameModel getScrambledWord];
//Start the game timer
gameTimer = [NSTimer scheduledTimerWithTimeInterval:1.0
target:self
selector:@selector(timerFired:)
userInfo:nil
repeats:YES];
}
-(void) endGameWithMessage:(NSString *)message {
//Call this method to end the game
//Invalidate the timer
[gameTimer invalidate];
//Show an alert with the results
UIAlertView* alert = [[UIAlertView alloc] initWithTitle:@"Game Over!"
message:message
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
-(void) timerFired:(NSTimer *)theTimer {
//The timer fires this method rougly every second
[gameModel timerTick];
if(gameModel.time <= 0){
remainingTime.text = 0;
[self endGameWithMessage:@"You are out of time. You lose!"];
}
else
remainingTime.text = [NSString stringWithFormat:@"%i", gameModel.time];
}
@end
#import <UIKit/UIKit.h>
#import "mmScramblerModel.h"
@interface mmViewController : UIViewController {
mmScramblerModel* gameModel;
NSTimer* gameTimer;
}
-(IBAction)guessTap:(id)sender;
-(void) endGameWithMessage:(NSString*) message;
@property (weak, nonatomic) IBOutlet UITextField * guessText;
@property (weak, nonatomic) IBOutlet UILabel * scrambledWord;
@property (weak, nonatomic) IBOutlet UILabel * remainingTime;
@property (weak, nonatomic) IBOutlet UILabel * playerScore;
@end