Я пытаюсь обернуть голову вокруг одиночных чисел, и я понимаю, что делегат приложения - это, по сути, одноэлементный объект. Я пытаюсь иметь некоторые переменные-члены в App Delegate, к которым я могу получить доступ из любого другого класса. Я сделал это в App Делегат:Доступ к переменной-члену AppDelegate
@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"
В ом у меня есть это где-то:
test=(AppDelegate*)[[[UIApplication sharedApplication] delegate] screenwidth];
Однако он утверждает, что «screenwidth» - это метод экземпляра, который не найден. Я также попытался это:
test=(AppDelegate*)[[UIApplication sharedApplication] delegate].screenwidth;
Это используется точечный синтаксис, так как screenwidth
синтезировали, но он утверждает, что property screenwidth not found
Я уверен, что эти основные вопросы, которые могут быть исправлены просто. Любая помощь оценивается.
спасибо Тим! оцените указатель. (не каламбур!) – johnbakers
Вы полностью намеревались каламбур. Не лгите. – Tim
Это правда, что приведение было неправильным, но это не является причиной указанной ошибки. (Или, если это так, компилятору нужен хороший удар в голову.) – Caleb