2011-06-21 6 views
1

.htmlページを開くことをサポートするアプリケーションを作成できるかどうか疑問に思っていました。htmlページ用に開く(Safariで)

たとえば、アプリケーションが.pdfをサポートしている場合、.pdfを開くと、「Open in myApp」というボタンが付いた小さなグレーのボックスが表示されます。このようなものを手に入れることはできますか?

答えて

2

ええとあなたはUIDocumentInteractionControllerについて話しています。あなたのUIViewControllerで
実装UIDocumentInteractionControllerDelegate

- (UIViewController *)documentInteractionControllerViewControllerForPreview:(UIDocumentInteractionController *)controller { return self; } 
- (UIView *)documentInteractionControllerViewForPreview:(UIDocumentInteractionController *)controller { return self.view; } 
- (CGRect)documentInteractionControllerRectForPreview:(UIDocumentInteractionController *)controller { return self.view.frame; } 

そして、オプションボックスをポップアップするには、ナビゲーションバーにボタンを追加します。

// example: opening a .html file 
NSString *index = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"]; 

// self.controller is a UIDocumentInteractionController ivar 
self.controller = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:fileToOpen]]; 
self.controller.delegate = self; 
CGRect rect = self.navigationController.navigationBar.frame; 
rect.size = CGSizeMake(1500.0f, 40.0f); // move the box right down under the button 
[self.controller presentOptionsMenuFromRect:rect inView:self.view animated:YES]; 

表示される必要があり、特定のドキュメントをサポートしているアプリケーションのリストを。あるタイプの文書をサポートするためにアプリケーションを登録していない場合でも、「QuickLook」オプションが表示されます。これらのすべては、アプリケーションがファイルとやりとりしているすべてのアプリケーションで発生します(ファイル自体はUIに公開されていないためです)。

+0

アプリが.pdfファイル(バンドルに対応)をサポートしているため、灰色の四角形が自動的に表示されます。これは私がプログラムしたものではなく、iOSは灰色のボックスにアプリでそれを開くオプションを示しています。その時、私のアプリはおそらくまだ始まっていない可能性があります。私は.htmlファイルに対しても同じようにしたいと思います – Joetjah

関連する問題