내 응용 프로그램 대리인의 변수/propery를 전역 변수로 사용하고 있습니다. (싱글 톤 클래스를 다루고 싶지 않습니다.)응용 프로그램 대리인 변수/속성에 액세스하려고 시도했습니다.
#define 문을 응용 프로그램 대리인 클래스에 쓰려고합니다. 내가 입력 한 경우 :
[UIApplication sharedApplication]
내 응용 프로그램 대리인 클래스에서 코드 힌트는 sharedApplication을 인식하지 못합니다. 그러나 viewController 클래스에 같은 것을 입력하면 "sharedApplication"이 바로 나타납니다. 내 applicationDelegate.h에 NSMutableDictionary를 정의 (? 또는하는 .m)하기 위해
, 나는 쓰기 : 다음
#define MyDictionary [[[UIApplication sharedApplication] delegate] stateDictionary]
을 내가 다른 클래스에서 사용하려고하면 :
[[MyDictionary objectForKey:@"California"] largestCity];
MyDictionary를 먼저 선언해야한다는 오류가 발생합니다. 나는 여기에서 많은 개념에 관해 정말로 혼란 스럽다.
잘 작동합니다. 고맙습니다. 어쨌든 그것을 정의하여 2 문장을 사용하지 않고 변수에 액세스 할 수 있습니까? 내가 그들을 풀어야합니까? 내가 그들을 풀어 주면 사전의 내 AppDelegates 인스턴스를 해제하고 위임합니까? – Bryan
또한 내 질문의 첫 번째 부분에서 두 appDelegates의 차이점은 무엇입니까? – Bryan
불행히도이 두 줄을 사용해야합니다. 내가 아는 실제 전역 변수는 없지만 다시는 내 코드에서 사용하지 않습니다. :) 방출하기 : 당신이 그들을 창조 한 종류에서 풀어 놓으십시오. 예를 들어, MyApplicationDelegate에서 생성 한 경우 dealloc 메소드에서 해제하십시오. 응용 프로그램 위임 질문 : 새 stackoverflow 질문을 시작하십시오. :) 그것의 주제는 자신의 ... – Rudi