3

分割ビュー ベースのアプリの detailView でドキュメントのクイック ルックを表示する必要があります。マスター ビューには、アプリのドキュメント フォルダー内のすべてのファイルのリストを含む UITableView があります。
このように、DetailViewController で QLPreviewController を使用しようとしています。

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

ドキュメントのプレビューを見ることはできますが、詳細ビューの上部にツールバーが表示されなくなり、ポートレート モードではファイル リストが表示されないため、永遠に立ち往生してしまいます。マスター ビューで。
また、QLPreviewController の DetailViewController サブクラスを作成しようとしましたが、成功しませんでした。

4

2 に答える 2

1

試す

[self presentModalViewController:preview animated:YES]; 

それ以外の

[[self navigationController] pushViewController:previewController animated:YES];
于 2011-08-03T16:29:02.283 に答える
1

previewController を [self navigationController] にプッシュする代わりに、あなたが説明したことから、previewController を UISplitViewController の詳細ビューとして設定する必要があると思います。

これはそのように行うことができます

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

previewController のナビゲーション バーを表示する場合は、次のように UISplitViewController で詳細ビューとして設定する前に、previewController を UINavigationController でラップできます。

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

乾杯

于 2011-11-30T05:23:27.253 に答える