Ошибка сборки ipad - синтезированное свойство должно быть названо одинаково - PullRequest
2 голосов
/ 24 апреля 2011

Я скачал пример программирования для iPad с сайта pragprog .

Когда я пытался скомпилировать пример Bezier1, я получил 'syntehsized property 'window'... ошибку.

Почему эта ошибка?Как решить эту проблему?

enter image description here

ДОБАВЛЕНО

@interface BezierAppDelegate : NSObject <UIApplicationDelegate> {

    UIWindow *window;
    BezierViewController *viewController;
}

отсутствует.

1 Ответ

1 голос
/ 24 апреля 2011

Это означает, что в заголовке «BezierAppDelegate.h» переменные window и viewController не объявлены

Точно, к каким типам они относятся, я не уверен, но должно быть что-то вроде этого.

@interface BezierAppDelegate : NSObject {

    UIViewController *viewController;
    UIWindow *window;
    //other stuff too
}

@property (readwrite,assign) UIViewController *viewController;
@property (readwrite,assign) UIWindow *window;

Но может быть и что-то подобное.

@interface BezierAppDelegate : NSObject {

    UIViewController *_viewController;
    UIWindow *_window;
    //other stuff too 
}

@property (readwrite,assign) UIViewController *viewController;
@property (readwrite,assign) UIWindow *window;

В этом случае вам нужно синтезировать вот так

@synthesize viewController=_viewController,window=_window;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...