iPad中Present弹出UIAlertController时崩溃解决

问题:

问题代码节选:


iPad中Present弹出UIAlertController时崩溃解决_第1张图片
Snip20170804_2.png

崩溃日志描述:


iPad中Present弹出UIAlertController时崩溃解决_第2张图片
Snip20170804_1.png

问题意思是说:当UIAlertController的style是UIModalPresentationPopover时,需要指定位置信息,可以是sourceView和sourceRect,或者barButtonItem。
  • 问题解决:
    产生问题原因日志中已经解释的比较清楚,ipad中preferredStyle为UIAlertControllerStyleActionSheet的UIAlertController是采用popover方式。所以iphone中没有问题的代码在ipad中崩溃的原因就是没有满足popover方式的要求-需要指定位置信息。
  • 改善后的代码:
iPad中Present弹出UIAlertController时崩溃解决_第3张图片
Snip20170804_3.png

这里涉及到ios8的新特性,后面找时间补充:


iPad中Present弹出UIAlertController时崩溃解决_第4张图片
Snip20170804_4.png

你可能感兴趣的:(iPad中Present弹出UIAlertController时崩溃解决)