温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Xcode9和iOS11适配和特性的示例分析

发布时间:2021-08-04 12:32:52 来源:亿速云 阅读:140 作者:小新 栏目:移动开发

这篇文章主要介绍Xcode9和iOS11适配和特性的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

首先是跳转, 之前按住Command + 左键 就可以跳转了;然而今天我发现 除了这个:

Xcode9和iOS11适配和特性的示例分析

Jump to Definition(^⌘):跳转类头文件或定义

Show Quick Help(⌥):显示帮助文档

Edit All in Scope:编辑文档内所有匹配内容

在这里我要说,对于懒得不行的我,简直要吐,多了一步操作 效率降低很多的好吗?

那么好,你试试 Command + 右键

激不激动,惊不惊喜,意不意外?

再说一下报错和警告

之前, 错误信息只会在错误处后面一行显示,但是错误信息过多的时候,在看错误信息的时候难免有些不方便,现在好了,当点击错误信息前面的红点时,错误信息会完全展开,并且有fix功能。

还有一个贴心小功能

就是在点击一个) ] }等有对应括号的时候,会直接给你找到对应的位置,这对于if嵌套层级关系定位是非常有帮助的说,尤其是看别人乱七八糟的代码的时候 ~~~浪里个浪

关于模拟器

同时可以打开多个模拟器了,这对于多机型之间的对比和调试有很大的帮助的说

模拟器尺寸也不是以前的Command + 1 2 3 4 5了 可以自由调节大小了,方法就像word里面调整图片一样.等比缩放

无限调试

1.第一次无线调试还是需要先用数据线连接手机,连接好之后,选择Window->Devices and Simulators,或者直接按command+shift+2

2.进入下一个界面,勾选上connect via network,然后等待它自动连接,连接成功之后,左上角手机后面会出现一个图标,代表已经连接成功。(成功连接的前提是手机跟电脑必须在同一个网段这个很重要)

3、回到选择设备的界面,当手机右边出现那个图标,说明手机已经准备好,拔掉数据线,可以直接run项目了

这个是朋友告诉我的,我直接找的方法哦,不是本人发现的~在此声明一下啦

说完Xcode9 再说说iOS11

1.相册权限需要增加,不然会造成闪退哟

增加info.Plist中的字段:

之前的这个字段:Privacy - Photo Library Usage Description

需要增加这个字段Privacy - Photo Library Additions Usage Description,内容和上面字段保持一致即可。

2.UITableViewStyleGrouped样式的UITableView的sectionHeader和sectionFooter有一个默认的高度,通常不需要显示header或者footer的时候,会这么写

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
  return CGFLOAT_MIN;
}

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
  return CGFLOAT_MIN;
}

但是在iOS11里面你会发现段头段尾又回来辣!改了各种新增的属性比如safeArea之类的一点用都没有,最后发现必须要把estimatedSectionHeaderHeight置0才变回去

3.在iOS11中,苹果开放了NFC(Near field communication),怕也是其推广ApplePay的一种策略。
在使用近场通讯时,首先也要在info.plist配置NFCReaderUsageDescription 权限,案例步骤,如下:

iOS 11 Core NFC - any sample code?

4.如果您在Navigation上的titleView上添加searchBar,iOS11情况下可能有问题

- (void)resetSearchBar
{
  CGFloat leftButtonWidth = 35, rightButtonWidth = 75; // left padding right padding
  UIView *container = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width - leftButtonWidth - rightButtonWidth, 44)];

  self.searchBar.translatesAutoresizingMaskIntoConstraints = NO;
  [container addSubview:self.searchBar];

  CGFloat offset = (rightButtonWidth - leftButtonWidth) / 2;
  // 给searchBar添加约束
  [NSLayoutConstraint activateConstraints:@[
                       [self.searchBar.topAnchor constraintEqualToAnchor:container.topAnchor], // 顶部约束
                       [self.searchBar.leftAnchor constraintEqualToAnchor:container.leftAnchor constant:-25*ScreenScaleX], // 左边距约束
                       [self.searchBar.rightAnchor constraintEqualToAnchor:container.rightAnchor constant:0], // 右边距约束
                       [self.searchBar.bottomAnchor constraintEqualToAnchor:container.bottomAnchor], // 底部约束
                       [self.searchBar.centerXAnchor constraintEqualToAnchor:container.centerXAnchor constant:-offset], // 横向中心约束
                       //                       [self.searchBar.widthAnchor constraintEqualToAnchor:container.widthAnchor constant:width] // 宽度约束
                       ]];
  self.navigationItem.titleView = container; // 顶部导航搜索
}

以上是“Xcode9和iOS11适配和特性的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI