Не наиважнейшая autosaveWithCompletionHandler:
всякий раз, когда изменяется документ ( [doc updateChangeCount: UIDocumentChangeDone]
) autosaveWithCompletionHandler:
периодически вызывается.autosaveWithCompletionHandler: (UIDocument) переопределение вопрос
Но если я переопределяю этот метод, он вызывается только один раз.
Документ был изменен -> Время проходит ... -> Был отменен метод -> Документ был изменен -> Время проходит ... -> Время проходит ... -> Документ был изменено -> Проходит время ... -> Проходит время ...
Я делаю изменение документа, позвонив по телефону [doc updateChangeCount: UIDocumentChangeDone]
.
(метод наиважнейшая)
- (void) autosaveWithCompletionHandler: (void (^(BOOL success))completionHandler {
if ([self hasUnsavedChanges]) {
[self saveToURL: self.fileURL forSaveOperation: UIDocumentSaveForOverwriting completionHandler: ^(BOOL success) {
if (success) {
NSLog(@"%@ has been autosaved", [self description]);
completionHandler(YES);
}
else {
NSLog(@"Failed to autosave %@", [self description]);
completionHandler(NO);
}
}];
}
} // autosaveWithCompletionHandler:
Благодарим Вас за чтение.
Я начал работать над чьим-то кодом, который отменяет это ... - (void) autosaveWithCompletionHandler: (void (^) (успех BOOL)) completeHandler { [super autosaveWithCompletionHandler: completeHandler]; [[NSNotificationCenter defaultCenter] postNotificationName: объект DOCUMENT_AUTOSAVE_OPERATION: self]; } почему это будет проблемой, и как еще я должен обратиться к необходимости уведомления, если бы я не переопределял –
Это, наверное, хорошо, хотя я не уверен, зачем вам это уведомление. – Simon
Спасибо. Причина в том, что он вызывает метод NSLogs, который, в свою очередь, вызывает другой метод для повторного сохранения. И этот метод выдает * другой * (другой вид) уведомления о сохранении. : / –