2013-01-02 57 views
2
UIDocumentInteractionController *documentController; 

-(void)openDocumentIn 

{ 

    NSString *filepath = [[NSBundle mainBundle]pathForResource:@"Learn Book" ofType:@"pdf"]; 
    NSLog(@"path:%@", filepath); 
    if(filepath == nil) 
    { 
     NSLog(@"filepath is nil."); 
     return ; 
    } 
    documentController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:filepath]]; 
    documentController.delegate = self; 
    documentController.UTI = @"com.adobe.pdf"; 
    CGRect navRect = self.navigationController.navigationBar.frame; 
    navRect.size = CGSizeMake(1500.0f, 40.0f); 
    [documentController presentOpenInMenuFromRect:navRect inView:self.view animated:YES ]; 
    //[documentController presentOpenInMenuFromRect:CGRectZero inView:self.view animated:YES ]; 
} 

我已經將它從「CGRectZero」更改爲「navRect」,但運行後沒有看到差異。爲什麼?presentOpenInMenuFromRect的第一個參數是什麼意思?

回答

0

"presentOpenInMenuFromRect"的第一個參數是錨定菜單的位置(在座標系統視圖)。

做「CGRectZero」將無法正常工作,因爲這意味着您要求一個零高度爲&寬度的矩形。做整個導航欄(就像你在「navRect」上做的那樣)也不會起作用。

最好只設置矩形出現在觸發UIDocumentInteractionController的按鈕下方或旁邊。

+0

恰恰相反,'CGRectZero'通常工作正常 –

相關問題