1

私のアプリでは、appDelegateのapplicationWillTerminateに現在存在するコードを実行しようとしています。現在実行中のメソッド(NSLogで確認済み)に同じコードをc / pしましたが、コードが同じように実行されていないようです。

次のコードは私のapplicationWillTerminateからのもので、データを保存し、次回ロードできるようにします。

[myArray makeObjectsPerformSelector:@selector(saveAllDataLeads)];

これを(現在アクティブなメソッドの)DetailViewController.mに挿入すると、次のように挿入されます。

[appDelegate.myArray makeObjectsPerformSelector:@selector(saveAllDataLeads)];

問題は、saveAllDataLeadsの処理が実行されないことです。誰かが何が問題なのかを確認できますか?または、より多くの情報が必要です。

よろしく

DetailViewController.hiで宣言しました

MyAppDelegate * appDelegate;

4

1 に答える 1

0

myArrayに追加したオブジェクトには、saveAllDataLeadsという名前のパラメーターのないセレクターが必要です。

@interface MyObject : NSObject {  
}  
- (void)saveAllDataLeads;  
@end  

@implementation MyObject
- (void)saveAllDataLeads {
  // do something
}
@end

次に、おそらくどこかでMyObjectのインスタンスをmyArrayに追加しています。

MyObject* instance = [MyObject new];
[appDelegate.myArray addObject:instance];
[instance release];
于 2010-01-23T00:31:58.523 に答える