2011-06-23 34 views
3

我必須在基於splitview的應用的detailView中顯示文檔的快速外觀。在主視圖中,我有一個UITableView,其中包含我的應用程序的Document文件夾中的所有文件的列表。
我試圖使用QLPreviewController在DetailViewController,以這樣的方式如何在基於splitview的iPad應用中顯示文檔的快速外觀

QLPreviewController *previewController = [[QLPreviewController alloc] init]; 
previewController.dataSource = self; 
previewController.delegate = self; 
previewController.currentPreviewItemIndex = ...; 
[[self navigationController] pushViewController:previewController animated:YES]; 
[previewController release]; 

我能看到文件的預覽,但我沒有再看到工具欄在的頂部詳細信息視圖和縱向模式中,我被永久卡住了,因爲我無法在主視圖中看到文件列表。
我也嘗試使QLPreviewController的DetailViewController子類,但沒有成功。

回答

1

嘗試

[self presentModalViewController:preview animated:YES]; 

,而不是

[[self navigationController] pushViewController:previewController animated:YES]; 
+0

謝謝您的回答。
但我希望在分割視圖的詳細視圖中顯示它,而不是在模態視圖中顯示。 – Giorgio

1

我想,而不是推previewController到[自我navigationController],我認爲你需要做的,而不是從你所描述的,是將previewController設置爲您的UISplitViewController的詳細視圖。

這可以像這樣

[splitViewController setViewControllers:[NSArray arrayWithObjects:masterViewController, previewController, nil]]; 

如果你想擁有的previewController出現在導航欄中,你可以包裝previewController與一個UINavigationController來完成其設置爲在UISplitViewController像詳細視圖前所以:

UINavigationController *wrapperNavigationController = [[[UINavigationController alloc] initWithRootViewController:previewController] autorelease]; 
[splitViewController setViewControllers:[NSArray arrayWithObjects:masterViewController, wrapperNavigationController, nil]]; 

乾杯

相關問題