美文网首页
iphonex设配中的问题

iphonex设配中的问题

作者: X_code_ZH | 来源:发表于2018-06-04 21:17 被阅读0次

    问题 1 app上下为黑色区域,不是全屏(iPhoneX)

    你可能需要添加新的LaunchImage

    编辑LaunchImage的Contents.json文件,在前面添加如下代码

    注意替换文件名

    {"extent" : "full-screen", "idiom" : "iphone", "subtype" : "2436h", "filename" : "iPhoneX.png", "minimum-system-version" : "11.0", "orientation" : "portrait", "scale" : "3x" }, { "extent" : "full-screen", "idiom" : "iphone", "subtype" : "2436h", "filename" : "iPhoneX.png", "minimum-system-version" : "11.0", "orientation" : "landscape", "scale" : "3x" },

    问题2 UITableView,cell,header,footer高度异常

    在iOS 11中默认启用Self-Sizing,,Headers, footers, and cells都默认开启了Self-Sizing,所有estimated 高度默认值从iOS11之前的 0 改变为UITableViewAutomaticDimension

    要解决此类异常的话,可通过以下代码解决

    _tableView.estimatedRowHeight = 0;

    _tableView.estimatedSectionHeaderHeight = 0;

    _tableView.estimatedSectionFooterHeight = 0;


    问题3 tabbar或navigation Bar异常 (iPhoneX)

    根据上面所述,iPhoneX的导航栏高度为88,tabbar高度为83的,如果你的界面看起来不是这样的话,那么应该是tabbar 或 navigationBar为自定义的,你需要重写你的代码以适配iPhoneX

    问题4 适配安全区域的问题

    安全区域时iOS11新增的概念,基本每个APP都得或多或少地适配安全区域,我自己也花了很长时间来适配,但都是基于这位大神的文章来适配的,强烈建议阅读这篇文章

    iOS 11 安全区域适配总结

    问题5 textField问题

    设置textFiled的左边文字偏移距离一般用用一个leftView,但是有的是设置一个paddingLeft,如下代码

    [self.textField setValue:[NSNumbernumberWithInt:16] forKey:@"paddingLeft"];

    然而!!这个代码在iOS11下失效了,没有间距了,所以还是老老实实用leftView吧

    self.textField.leftView = [[UIViewalloc] initWithFrame:CGRectMake(0,0,16,44)];self.textField.leftViewMode =UITextFieldViewModeAlways;

    问题6tableView的安全区域问题

    为了解决该问题必须手动设置UITableView的底部内边距为34

    self.tableView.contentInset =UIEdgeInsetsMake(0,0,34,0);

    注意:此时还有一个小问题,那就是滚动条scrollIndicator,发现滚动条已经到了屏幕底部,当然只是由于屏幕四周是圆角的,所以下面那以小部分没有显示出来,被圆角给截掉了。为了达成一致效果,滚动条也需要设置内边距

    self.tableView.scrollIndicatorInsets =UIEdgeInsetsMake(0,0,34,0);

    相关文章

      网友评论

          本文标题:iphonex设配中的问题

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