强制“开放......”选择

时间:2013-02-24 20:29:00

标签: ios objective-c ipad uidocumentinteraction

我的代码目前看起来像这样:

- (UIDocumentInteractionController *) setupControllerWithURL:(NSURL *)fileURL
                                           usingDelegate:(id <UIDocumentInteractionControllerDelegate>)         interactionDelegate {

    UIDocumentInteractionController *interactionController =
    [UIDocumentInteractionController interactionControllerWithURL:fileURL];
    interactionController.delegate = interactionDelegate;

    [interactionController presentOpenInMenuFromRect:CGRectZero inView:self.view animated:YES];

    return interactionController;

}

- (void)showOptionsMenu
{
    NSURL *fileURL = [NSURL fileURLWithPath:@"2bm.key"];
    docController = [self setupControllerWithURL:fileURL
                                   usingDelegate:self];
}

- (IBAction)KeynoteButton:(id)sender {

     [self showOptionsMenu];
}

这会在屏幕左上方的主题演讲气泡中生成一个打开。我可以搬到这个泡泡出现的地方吗?或者甚至可以更好地在这个气泡上强制触摸事件,这样用户就没有选择,主题演讲会自动打开?我不能使用URL引用方案,因为主题演讲不支持此。

由于

1 个答案:

答案 0 :(得分:0)

您可以通过在presentOpenInMenuFromRect:inView:animated:方法中指定正确的位置来指定弹出窗口的显示位置。现在你指定CGRectZero。传递适当的CGRect,表明您希望它出现在哪里。

您无法强制使用特定应用。许多用户将拥有多个可以打开给定文件的应用程序。让用户选择去哪里。