我一直在使用QuickLook Framework开发一个项目。我使用tableview来显示文件,并使用quicklook预览来显示它们。我在didSelectRowAtIndexPath方法中创建了QLPreviewController,并尝试使用indexPath.row设置currentPreviewItemIndex以显示我选择的文件。像这样的代码:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
// When user taps a row, create the preview controller
QLPreviewController *previewer = [[QLPreviewController alloc] init];
// Set data source
[previewer setDataSource:self];
// Which item to preview
[previewer setCurrentPreviewItemIndex:indexPath.row];
NSLog(@"Tapped Row: %@", [[NSNumber numberWithInt:indexPath.row] stringValue]);
NSLog(@"The INDEX: %@", [[NSNumber numberWithInt:previewer.currentPreviewItemIndex] stringValue]);
// Push new viewcontroller, previewing the document
[[self navigationController] pushViewController:previewer animated:YES];
}
但是结果是无论我在表视图中选择哪个单元格,它都显示相同的文件(文件列表中的第一个文件)。日志中的“分接的行:”显示正确的索引,但“索引:”始终为-1 ,这似乎无法设置currentPreviewItemIndex。
这有什么问题?如何正确设置索引?