Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何在其他应用程序(如ibooks)上打开pdf_Objective C - Fatal编程技术网

Objective c 如何在其他应用程序(如ibooks)上打开pdf

Objective c 如何在其他应用程序(如ibooks)上打开pdf,objective-c,Objective C,我使用UIDocumentinteractioncontroller在其他应用程序(如ibook)上打开pdf 但是很难找到关于它的医生 现在我可以介绍开放的部分。但是当我点击ibooks的图标时。没有发生什么事 我是否需要在委托中执行某些操作,例如documentInteractionController:willbegindingToApplication:???首先,必须在.h文件中添加UIDocumentInteractionControllerDelegate i、 e: 当然,您必须

我使用UIDocumentinteractioncontroller在其他应用程序(如ibook)上打开pdf

但是很难找到关于它的医生

现在我可以介绍开放的部分。但是当我点击ibooks的图标时。没有发生什么事


我是否需要在委托中执行某些操作,例如documentInteractionController:willbegindingToApplication:???

首先,必须在.h文件中添加UIDocumentInteractionControllerDelegate

i、 e:

当然,您必须将UIDocumentInteractionController的委托设置为此模块。我是这样解决的:

-(BOOL)canOpenDocumentWithURL:(NSURL*)url inView:(UIView*)view {
    BOOL canOpen = NO;
    UIDocumentInteractionController* tmpDocController = [UIDocumentInteractionController 
                                                      interactionControllerWithURL:url];
    if (tmpDocController)
    {
        tmpDocController.delegate = self;
        canOpen = [tmpDocController presentOpenInMenuFromRect:CGRectZero
                                                    inView:self.view animated:NO];                   
        [tmpDocController dismissMenuAnimated:NO];
    }
    return canOpen;
}

答案在下面的帖子里
- (void)documentInteractionController:(UIDocumentInteractionController *)controller willBeginSendingToApplication:(NSString *)application{
    NSLog(@"Send to App %@  ...", application);   
}

- (void)documentInteractionController:(UIDocumentInteractionController *)controller didEndSendingToApplication:(NSString *)application{
    NSLog(@"Finished sending to app %@  ...", application);   

}

- (void)documentInteractionControllerDidDismissOpenInMenu:(UIDocumentInteractionController *)controller{
    NSLog(@"Bye");   

}
-(BOOL)canOpenDocumentWithURL:(NSURL*)url inView:(UIView*)view {
    BOOL canOpen = NO;
    UIDocumentInteractionController* tmpDocController = [UIDocumentInteractionController 
                                                      interactionControllerWithURL:url];
    if (tmpDocController)
    {
        tmpDocController.delegate = self;
        canOpen = [tmpDocController presentOpenInMenuFromRect:CGRectZero
                                                    inView:self.view animated:NO];                   
        [tmpDocController dismissMenuAnimated:NO];
    }
    return canOpen;
}