Core Data を使用していますが、正しく行っているかどうか疑問に思っていました。以下の完了ハンドラーとブロックUIManagedDocument
を使用して、シングルトン オブジェクトからmy を開きます。
[[self managedDocument] openWithCompletionHandler:^(BOOL success) {
if(success) {
NSLog(@"DOCUMENT: Success, Opened ...");
// TODO: Things to do when open.
// ...
// ...
}
}];
私は、ドキュメントの操作を開始できることを示すUIViewController
ために監視するオブザーバーをセットアップしました。UIDocumentStateChangedNotification
- (void)awakeFromNib {
NSLog(@"%s", __PRETTY_FUNCTION__);
NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
[notificationCenter addObserver:self selector:@selector(documentIsReady) name:UIDocumentStateChangedNotification object:nil];
}
これは問題なく動作するように見えますが、コールバックブロックを使用していないことを認識しています。1 つの解決策は、独自の通知を作成し、それをブロックから投稿することです。基本的には同じことを行いますが、コードが読みやすくなります。どんなコメントでも大歓迎です。