首页 > 移动平台 > 详细

iOS13新坑(转自Cocoachina)

时间:2019-07-22 16:33:41      阅读:213      评论:0      收藏:0      [点我收藏+]

1、用presentViewController而非navigator,但在iOS13里默认是可下拉折叠的对话框,这样带来一个界面排版的高度并不是屏幕高度,从而影响界面效果。可以将viewcontroller.modalPresentationStyle设置为UIModalPresentationFullScreen来回到原来的样式。
2、要兼容iOS13的黑色主题色,就必须去识别当前的配色方案,可以通过viewcontroller.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark来获取,需要添加if (@available(iOS 12.0, *))以支持iOS12以下的系统。
3、可排序tableview的右侧三条杠会随着主题色改变色彩,并不会检测你自己设置的屏幕底色。两种方法,1、根据上面的方法来识别主题色从而给不同的底色来适配。2、强行更改三条杠为其他图片。
for (UIView * view in self.subviews)
    {
        if ([NSStringFromClass([view class]) rangeOfString:@"Reorder"].location != NSNotFound)
        {
            for (UIView * subview in view.subviews)
            {
                if ([subview isKindOfClass: [UIImageView class]])
                {
                    ((UIImageView *)subview).image = .....;
                }
            }
        }
    }

4、在其他queue里不能直接创建viewcontroller,alloc都不行,否则会被阻塞。以往我都是先创建好controller,在present的时候再跑到dispatch_async(dispatch_get_main_queue()里,但iOS13不行,创建controller时就需要在main queue里。

iOS13新坑(转自Cocoachina)

原文:https://www.cnblogs.com/MrXHong/p/11226200.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!