iOS8 SDK中部份更新

更新一:UIWindow中设备朝向和坐标的处理方式发生变化

iOS8以前,UIWindow中的坐标计算以设备Potraite朝向计算,即便将设备横置为Landscape朝向,坐标的计算方式依然不变。
因此,在设计自定义的转场(Segue)的时候,需要根据设备朝向重新调整坐标计算。而UIView的坐标会根据设备朝向自动调整。
iOS8以后,UIWindow与UIView保持一致,不再需要单独进行处理,但这个变化会与以前的逻辑冲突。

更新二:UIPopoverController的地位发生变化

UIPopoverController提供气泡式弹出框视图,在iPad上有很不错的体验。
在iOS8中,苹果调整了- presentPopoverFromRect:inView:permittedArrowDirections:animated:方法的逻辑。
因此,在自定义Segue的情况下,使用这个方法,可能会出现view not in windows hierachy错误,使得原本可以弹出的视图无法弹出。

更新三:Core Location定位服务授权流程有变化

在iOS8以前,没有单独的授权接口可以调用,当第一次调用到locationManager中的坐标获取方法时,会弹出一个系统对话框提示用户是否授权。
iOS8以后,不再有自动提示。开发者需要首先调用CLLocationManager的类方法- authorizationStatus来判断授权状态,
进而手动调用其实例方法- requestAlwaysAuthorization或者- requestWhenInUseAuthorization来手动提示用户授权。
这里还必须要在Info.plist里面设置NSLocationUsageDescription或者NSLocationWhenInUseUsageDescription这两个key中的其中一个来设置弹出框的提示信息。
否则无法弹出提示框。之后可以通过locationManager:didChangeAuthorizationStatus:来监测用户授权的情况,分别做处理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值