UIDocumentInteractionController が iPadで有効にならない
Deployment device が iPhoneだと正常に起動するが、
Deployment device が iPadだと連携先のメニューが表示されない。
なんで?
iPhoneの場合は、中央下に表示されるが、iPadの場合は、座標を指定しないとダメみたい。
トリガーのボタンの右下の座標を基準に、選択メニューを表示するようにしてみた。
- (IBAction)btnOpen:(UIButton *)sender { [self fileOpen:@"sample.pdf" ui:sender]; } -(void)fileOpen:(NSString*)fileName ui:(UIButton*)ui { NSURL *url = [NSURL fileURLWithPath:fileName]; CGRect rect = CGRectMake(ui.frame.origin.x + ui.frame.size.width ,ui.frame.origin.y + ui.frame.size.height,0,0); isValid =[_docInteractionController presentOpenInMenuFromRect:rect inView:self.view animated:YES]; }
上記のように実装しても、iPhoneでは相変わらず、下中央に開く
参考
ios - UIDocumentInteractionController not appearing on iPad but working on iPhone - Stack Overflow