ios控制器怎么推出popoverpresentationcontroller

 我来答
打伞鱼Aw
2016-04-07 · TA获得超过7266个赞
知道大有可为答主
回答量:7524
采纳率:90%
帮助的人:1594万
展开全部
iPad中使用presentViewController如果不设置popoverPresentationController会崩溃,iPhone貌似是不会的
1、在iOS 8.02 一定要设定popoverPresentationController 不然程式会Crash

UIActivityViewController *avc = ....;

if([[[UIDevice currentDevice] systemVersion] floatValue]>=8.0) {
//如果是UIButton
UIButton *btn = (UIButton *)sender;
avc.popoverPresentationController.sourceView = btn;
avc.popoverPresentationController.sourceRect = btn.bounds;
//如果是BarItem
avc.popoverPresentationController. barButtonItem = sender;
}
[self presentViewController:avc animated:YES completion:nil];

2、UIActivityViewController *activityController =
[[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
[self presentViewController:activityController animated:YES completion:nil];

解决办法是 在 presentController 前面加一句 if ([activityViewController respondsToSelector:@selector(popoverPresentationController)]) {

activityViewController.popoverPresentationController.sourceView = self.view;

}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式