Я создаю PDF Reader, похожий на приложение «Книги», встроенное в iOS. Мои закладки работают и обновляются, за исключением случаев, когда я выхожу из режима просмотра PDF и go возвращаюсь к просмотру документа (средство выбора файлов), а затем снова открываю свой PDF. Затем происходит сбой моего приложения:
private func updateBookmarkStatus() {
if let documentURL = pdfDocument?.documentURL?.absoluteString,
let bookmarks = UserDefaults.standard.array(forKey: documentURL) as? [Int],
let currentPage = pdfView.currentPage,
let index = pdfDocument?.index(for: currentPage) {
/*crashes on this line*/: bookmarkButton.image = bookmarks.contains(index) ? #imageLiteral(resourceName: "Bookmark-P") : #imageLiteral(resourceName: "Bookmark-N")
} else {
print("Bookmark Error")
}
}
с
Unexpectedly found nil while implicitly unwrapping an Optional value:
Строка, к которой я добавляю комментарий, просто обновляет закладку до «заполненной версии», показывая пользователю, что страница является в закладки.
Закладка обновляется и работает в формате PDF. Однажды я go выходит из PDF-файла к просмотру документа, а затем go возвращается в PDF-файл, что он дает сбой. Возможно, стоит отметить, что «Ошибка закладки» печатается, когда я впервые открываю PDF.
Если я не коснусь кнопки закладки, тогда я смогу go, чтобы просмотреть документ и открыть PDF-файл столько раз, сколько захочу. Но как только я коснусь кнопки закладки, я не смогу снова открыть свой PDF-файл.
Есть предложения?
Заранее спасибо.