此代碼在第一次觸摸時起作用。預覽開始顯示(標題,完成,操作和空白頁),然後再次調用previewController:(QLPreviewController *)previewController previewItemAtIndex:(NSInteger)index
。這一次[self.resultsController objectAtIndexPath:selectedIndexPath];
返回零 - 我的猜測是不再選擇條目。 index
是正確的,在1QLPreviewController和NSFetchedResultsController objectAtIndexPath返回零
過程:
- (id)previewController:(QLPreviewController *)previewController previewItemAtIndex:(NSInteger)index
{
NSIndexPath *selectedIndexPath = [self.tableView indexPathForSelectedRow];
Manuals *manuals = [self.resultsController objectAtIndexPath:selectedIndexPath];
NSURL *vUrl = [self locateUrl:[NSURL URLWithString:manuals.Url] ofType:[manuals.Url pathExtension]];
return vUrl;
}
如果我忽略了的異常 - 預覽繼續顯示該文檔。
我也儘量保持良好的最後返回selectedIndexPath,但隨後收到錯誤:用我的resultsController對象只有在指數傳遞
我如何獲得:-[__NSArrayM indexAtPosition:]: unrecognized selector sent to instance 0x1cd52800
問題?
我沒有在我的代碼中調用[previewController。它被委託。我只是試圖返回正確的文件://URL QLPreviewController正在請求。 – Kent 2011-12-14 17:37:15