2011-09-09 7 views
3

私は考えることができるすべてを試しましたが、それはまだNOに反応し、Appleには何のヒントもありません。UIDocumentInteractionController presentPreviewAnimated:NOを返すとプレビューが表示されない

- (void)connectionDidFinishLoading:(NSURLConnection *)connection 
{ 
    NSLog(@"finished!"); 

    NSString *tempString = [NSString stringWithFormat:@"file://%@%@", NSTemporaryDirectory(), [[NSProcessInfo processInfo] globallyUniqueString]]; 
    NSURL *tempURL = [NSURL URLWithString:tempString]; 
    [receivedData writeToURL:tempURL atomically:YES]; 

    NSLog(@"tempURL is written!"); 

    UIDocumentInteractionController *interactionController = [UIDocumentInteractionController interactionControllerWithURL:tempURL]; 
    interactionController.delegate = self; 
    [interactionController retain]; 
    NSLog(@"--- %i", [interactionController presentPreviewAnimated:YES]); 
    NSLog(@"presented preview"); 

    [connection release]; 
    [receivedData release]; 
} 

- (UIViewController*)documentInteractionControllerViewControllerForPreview:(UIDocumentInteractionController *)controller 
{ 
    NSLog(@"asdf"); 
    UIViewController *viewController = [[[UIViewController alloc] init] autorelease]; 
    [self.navigationController pushViewController:viewController animated:YES]; 
    return viewController; 
} 
+0

tempUrlがnullでないかどうかを確認しましたか? – Adriana

答えて

6

1)開いているドキュメントが正当なものだと確信していますか?そうでない場合は、NOを返すことが期待できることになります

2)私はあなたの委任方法に困惑しています。本発明の方法は、ナビゲーションコントローラ全体を単独で押すことを喜んで行う。代わりにこのコードを使用すると、あなたはより良いものになりますか? (根拠についてdocsを参照してください。)

- (UIViewController *) documentInteractionControllerViewControllerForPreview: (UIDocumentInteractionController *) controller 
{ 
    return [self navigationController]; 
} 
+0

1)私はPDFとHTMlファイルを使用しています。 2)私は以前にそれを試みましたが、それ以上の結果は得られませんでした。私はそれを元に戻して、まだ0を得る。 –

0

私はNOを返しpresentPreviewAnimatedと同様の問題がありました。私の場合は、ファイルの拡張子がありませんでした。ファイルの名前をdocument.xlsxからdocument.xlsxに変更すると、正常に開かれました。

関連する問題