美文网首页iOS学习专题ios实用开发技巧好东西
升级xcode9 ios11遇到的问题及解决办法

升级xcode9 ios11遇到的问题及解决办法

作者: InterestingPDD | 来源:发表于2017-09-21 17:16 被阅读912次

    1. 导航栏titleView适配问题

    导航栏搜索视图没有占满导航栏  iOS11 导航栏上的视图推荐使用autolayout  。所以那些出问题的最好修改一下布局方式。

    解决这个问题的方法就是重写searchbar的intrinsicContentSize方法  给他指定宽高大小 

    - (CGSize)intrinsicContentSize{

     returnCGSizeMake(ScreenWidth,31);

    }

    Intrinsic Contenet Size – Intrinsic Content Size:固有大小。顾名思义,在AutoLayout中,它作为UIView的属性(不是语法上的属性),意思就是说我知道自己的大小,如果你没有为我指定大小,我就按照这个大小来。 比如:大家都知道在使用AutoLayout的时候,UILabel是不用指定尺寸大小的,只需指定位置即可,就是因为,只要确定了文字内容,字体等信息,它自己就能计算出大小来。   

    ios 11的UISearchBar高度变了  变成56了 以前是44

    CGFloat height =44;

    if(@available(iOS 11.0, *)) {

    height =56;

    }

    CCSearchBar*mysearchBar = [[CCSearchBaralloc]initWithFrame:CGRectMake(0,0,ScreenWidth, height)];


    2 .导航栏遇到的第二个问题:导航栏上的头像 变形

    原因是我用的

    UIBarButtonItem*leftBarButtonItem = [[UIBarButtonItemalloc] initWithCustomView:personalButton];

    这种方式 personalButton用的是frame布局    给他增加一个宽高的约束就可以了

    NSLayoutConstraint*widthConstraint = [NSLayoutConstraintconstraintWithItem:personalButtonattribute:NSLayoutAttributeWidthrelatedBy:NSLayoutRelationEqualtoItem:nilattribute:NSLayoutAttributeNotAnAttributemultiplier:0.0constant:30];

    [personalButtonaddConstraint:widthConstraint];

    NSLayoutConstraint*heightConstraint = [NSLayoutConstraintconstraintWithItem:personalButtonattribute:NSLayoutAttributeHeightrelatedBy:NSLayoutRelationEqualtoItem:nilattribute:NSLayoutAttributeNotAnAttributemultiplier:0.0constant:30];

    [personalButtonaddConstraint:heightConstraint];

    3.SimplePing编译不过的问题

    由于iOS

    framework 里面改了一下这句代码的定义  只需要把 check_compile_time 这个函数改成 __Check_Compile_Time 就行了  这两个函数是一样的  。

    check_compile_time(sizeof(IPHeader) ==20);

    将所有的check_compile_time改为__Check_Compile_Time:

    __Check_Compile_Time(sizeof(IPHeader) ==20);

    3. Xcode9下相册等访问权限崩溃问题

    查了资料说iOS11下,苹果对相册的权限key做了调整,原来的NSPhotoLibraryUsageDescription,在iOS11之后,改成了NSPhotoLibraryAddUsageDescription

    所以你可以在info.plist 把 key 改成NSPhotoLibraryAddUsageDescription, 很快解决问题了.

    这是我升级iOS 11和xcode9之后遇到问题后解决了的方式 记录一下 看能不能帮到你们。

    相关文章

      网友评论

      本文标题:升级xcode9 ios11遇到的问题及解决办法

      本文链接:https://www.haomeiwen.com/subject/hpktextx.html