1

MyViewController.h で宣言:

AppDelegate *appDelegate;
@property (nonatomic, strong) AppDelegate *appDelegate;

MyViewController.m の viewDidLoad では:

self.appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
localAppDelegate= (AppDelegate *)[[UIApplication sharedApplication] delegate];

何らかの理由で appDelegate は null のままですが、localAppDelegate は適切に割り当てられています。

self.appDelegate が適切に割り当てられないのはなぜですか?

4

1 に答える 1

2

コメント localAppDelegate に基づくエリックは常にアクセス可能である必要がありますが、AppDelegate ヘッダーをその内部で使用するクラスに必ずインポートしてください。私はそのシンプルなものを使用することを好み、NSUserDefaultsこのような場合に使用することをお勧めします..これは、文字列を保存して取得する簡単な例ですNSUserDefaults

  1. 設定するには:

    NSString *str = @"Malek";
    [[NSUserDefaults standardUserDefaults] setValue:str forKey:@"myName"]; [[NSUserDefaults standardUserDefaults] synchronize];

2.取得する:

NSString *myName = [[NSUserDefaults standardUserDefaults] valueForKey:@"myName"];
于 2012-04-19T15:33:04.397 に答える