请考虑以下标头(LessonDelegate.h(:
#import "Lesson.h"
#ifndef BirdEye_LessonDelegate_h
#define BirdEye_LessonDelegate_h
@protocol LessonDelegate <NSObject>
- (BOOL) lesson:(Lesson*)lesson didRequestNavigation:(NSString*) url;
@end
#endif
它在这里给出了一个错误:
- (布尔(课程:(课程*(课程做了请求导航:(NSString*(网址;
说"期待一种类型"。它抱怨课程类型,即使它被声明并成功用于其他类。
Lesson.h
是它应该在的位置(同一个文件夹(,看起来像这样:
#import <Foundation/Foundation.h>
#import "SimpleManifest.h"
#import "Activity.h"
#import "LessonDelegate.h"
@interface Lesson : Activity
@property (retain, nonatomic) NSString *url;
@property (retain, nonatomic) SimpleManifest *manifest;
@property (retain, nonatomic, readonly) Activity *runningActivity;
@property (weak) id<LessonDelegate> delegate;
- (id) initWithUrl:(NSString*) aurl;
- (NSString*) deteails;
@end
我的错误在哪里?
LessonDelegate.h
@class Lesson; // there was a missing ; here
@protocol LessonDelegate <NSObject>
- (BOOL) lesson:(Lesson*)lesson didRequestNavigation:(NSString*) url;
@end
课.h
#import <Foundation/Foundation.h>
#import "SimpleManifest.h"
#import "Activity.h"
#import "LessonDelegate.h"
@interface Lesson : Activity
@property (retain, nonatomic) NSString *url;
@property (retain, nonatomic) SimpleManifest *manifest;
@property (retain, nonatomic, readonly) Activity *runningActivity;
@property (weak) id<LessonDelegate> delegate;
- (id) initWithUrl:(NSString*) aurl;
- (NSString*) deteails;
@end