Я пытаюсь обернуть голову вокруг синглетонов, и я понимаю, что App Delegate по сути является одноэлементным объектом. Я пытаюсь иметь некоторые переменные-члены в App Delegate, что я могу получить доступ из любого другого класса. Я сделал это в App Delegate:
@interface AppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
RootViewController *viewController;
int screenwidth;
}
@property (nonatomic, retain) UIWindow *window;
@property (nonatomic) int screenwidth;
Тогда в .m я сделал это:
- (void) applicationDidFinishLaunching:(UIApplication*)application
{
...
screenwidth=400; //arbitrary test number
Теперь у меня есть другой класс в проекте, и он делает это в .h:
#import "AppDelegate.h"
В .m у меня это где-то:
test=(AppDelegate*)[[[UIApplication sharedApplication] delegate] screenwidth];
Однако он утверждает, что «screenwidth» - это метод экземпляра, который не найден. Я также попробовал это:
test=(AppDelegate*)[[UIApplication sharedApplication] delegate].screenwidth;
Используется точечный синтаксис с момента синтеза screenwidth
, но утверждается, что property screenwidth not found
Я уверен, что это основные проблемы, которые можно просто исправить. Любая помощь приветствуется.