Appdelegate에 전역 변수가 정의되어 있습니다. 다른 컨트롤러에서 사용하고 싶습니다. 그리고는 다음과 같이 사용할 수 있습니다AppDelegate를 전역 적으로 선언하십시오.
AppDelegate *appDelegate=(AppDelegate *)[[UIApplication sharedApplication]delegate];
appdelegate.name=[NSString stringwithFormat:@"%@",ename];
를하지만의 ViewController에 appdelegates 변수에 액세스 할 whereever 내가 AppDelegate *appDelegate=(AppDelegate *)[[UIApplication sharedApplication]delegate];
같은 경고 메시지를 제공 할 때마다 사용해야하는 'AppDelgate의 지역 선언이 숨 깁니다 인스턴스 변수'낭포가있다 한 번만 모든 ViewController에서 액세스 할 수있는 방법을 선언 할 수있는 방법.이 경고는 어떻게 제거 할 수 있습니까?
편집 :
.h :
#import "AppDelegate.h"
@interface More : UIViewController
{
AppDelegate *appdelegate;
}
.m:
- (void)viewDidLoad
{
[super viewDidLoad];
appDelegate=(AppDelegate *)[[UIApplication sharedApplication]delegate]; //error :Use of undeclared identifier appDelegate
}
그냥 AppDelegate * appDelegate를 선언하십시오. .h 파일에서. 다음 viewdidload 그냥 쓰기 appDelegate = (AppDelegate *) [[UIApplication sharedApplication] 대리인]; 전체 파일에서 appDelegate에 액세스 할 수 있습니다. –
viewDidLoad에서 할 때 알 수없는 식별자 appDelegate 오류 사용 – Sindhia
경고가 표시되면 코드에 심각한 문제가있는 것입니다. 관련된 코드의 비트와'AppDelegate'가 선언 된 헤더 파일을 게시하십시오. – trojanfoe