今天升级了Xcode9 刚才写了一篇 爱劈叉的齐刘海

现在说说新的东西把,有些简直不能再恶心了但有些简直不能再贴心

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

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; // 顶部导航搜索
}

还有其他问题的话希望大家能在留言中提出,我们一起学习探讨~谢谢哦

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持Devmax。

浅谈Xcode9 和iOS11适配和特性的更多相关文章

  1. ios11 – 发货后连续培训CoreML模型

    在查看新的CoreMLAPI时,我看不到在生成.mlmodel并将其捆绑到您的应用程序后继续训练模型的任何方法.这让我觉得我无法对用户的内容或动作进行机器学习,因为模型必须事先经过完全训练.发货后有没有办法将训练数据添加到我训练过的模型中?本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至dio@foxmail.com举报,一经查实,本站将立刻删除。

  2. 本地通知无法在iOS 11中运行

    我在我的应用中使用本地通知.现在iOS11已经出现了,他们不再工作了.我没有在发布文档中看到任何可能导致此问题的内容,是否有人知道可能导致此问题的原因?我知道它已被弃用,但我认为没有理由说它为什么不应该只是工作.提前致谢解决方法似乎iOS11中存在一个错误.我可以看到我是否安排了超过64个允许的通知,它忽略了我安排的所有通知.docs状态系统保持最快的64个通知并丢弃其余的通知.在iOS11上它只是丢弃所有…

  3. 从iOS 11搜索控制器导航时,不需要的UITableView重新加载动画

    本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至dio@foxmail.com举报,一经查实,本站将立刻删除。

  4. iOS 11中的Apple Watch上缺少通知图标

    这在iOS10中运行良好,它在iOS11中停止工作.解决方法正如@Skyborg指出的那样,这似乎是一个watchOS错误,并在watchOS4.1中得到修复.

  5. 如何在Swift中以编程方式检测iOS11?

    我在WWDC视频中看到,有一些新的快速功能可以检测iOS11的可用性.如何使用Swift检测iOS11?

  6. swift3 – 为iOS8创建Launch Screen.xib(… iOS11,Swift 4和LaunchScreen.storyboard)

    你有两个选择:>您使用autolayout并为imageview提供全屏外观.但是,这会导致某些屏幕尺寸的图像被削减,这可能是您不想要的.所以你可能要考虑>将启动屏幕图像放入资产目录中,然后将不同的图像放入不同的大小类中.

  7. 解决iOS11刷新tableview会出现漂移的现象

    这篇文章主要介绍了解决iOS11刷新tableview会出现漂移的现象,需要的朋友可以参考下

  8. IOS11新特性与兼容适配

    iOS 11正式发布了,下面整理了一些该版本下的特点还有如何进行兼容适配工作需要做的事情,希望能够给你提供到帮助。

  9. iOS11 WKWebView 无法加载内容的解决方法

    这篇文章主要介绍了iOS11 WKWebView 无法加载内容,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  10. 详解Xcode 9 设置 iOS无线真机调试

    本篇文章主要介绍了详解Xcode 9 设置 iOS无线真机调试,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

随机推荐

  1. iOS实现拖拽View跟随手指浮动效果

    这篇文章主要为大家详细介绍了iOS实现拖拽View跟随手指浮动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  2. iOS – genstrings:无法连接到输出目录en.lproj

    使用我桌面上的项目文件夹,我启动终端输入:cd然后将我的项目文件夹拖到终端,它给了我路径.然后我将这行代码粘贴到终端中找.-name*.m|xargsgenstrings-oen.lproj我在终端中收到此错误消息:genstrings:无法连接到输出目录en.lproj它多次打印这行,然后说我的项目是一个目录的路径?没有.strings文件.对我做错了什么的想法?

  3. iOS 7 UIButtonBarItem图像没有色调

    如何确保按钮图标采用全局色调?解决方法只是想将其转换为根注释,以便为“回答”复选标记提供更好的上下文,并提供更好的格式.我能想出这个!

  4. ios – 在自定义相机层的AVFoundation中自动对焦和自动曝光

    为AVFoundation定制图层相机创建精确的自动对焦和曝光的最佳方法是什么?

  5. ios – Xcode找不到Alamofire,错误:没有这样的模块’Alamofire’

    我正在尝试按照github(https://github.com/Alamofire/Alamofire#cocoapods)指令将Alamofire包含在我的Swift项目中.我创建了一个新项目,导航到项目目录并运行此命令sudogeminstallcocoapods.然后我面临以下错误:搜索后我设法通过运行此命令安装cocoapodssudogeminstall-n/usr/local/bin

  6. ios – 在没有iPhone6s或更新的情况下测试ARKit

    我在决定下载Xcode9之前.我想玩新的框架–ARKit.我知道要用ARKit运行app我需要一个带有A9芯片或更新版本的设备.不幸的是我有一个较旧的.我的问题是已经下载了新Xcode的人.在我的情况下有可能运行ARKit应用程序吗?那个或其他任何模拟器?任何想法或我将不得不购买新设备?解决方法任何iOS11设备都可以使用ARKit,但是具有高质量AR体验的全球跟踪功能需要使用A9或更高版本处理器的设备.使用iOS11测试版更新您的设备是必要的.

  7. 将iOS应用移植到Android

    我们制作了一个具有2000个目标c类的退出大型iOS应用程序.我想知道有一个最佳实践指南将其移植到Android?此外,由于我们的应用程序大量使用UINavigation和UIView控制器,我想知道在Android上有类似的模型和实现.谢谢到目前为止,guenter解决方法老实说,我认为你正在计划的只是制作难以维护的糟糕代码.我意识到这听起来像很多工作,但从长远来看它会更容易,我只是将应用程序的概念“移植”到android并从头开始编写.

  8. ios – 在Swift中覆盖Objective C类方法

    我是Swift的初学者,我正在尝试在Swift项目中使用JSONModel.我想从JSONModel覆盖方法keyMapper,但我没有找到如何覆盖模型类中的Objective-C类方法.该方法的签名是:我怎样才能做到这一点?解决方法您可以像覆盖实例方法一样执行此操作,但使用class关键字除外:

  9. ios – 在WKWebView中获取链接URL

    我想在WKWebView中获取tapped链接的url.链接采用自定义格式,可触发应用中的某些操作.例如HTTP://我的网站/帮助#深层链接对讲.我这样使用KVO:这在第一次点击链接时效果很好.但是,如果我连续两次点击相同的链接,它将不报告链接点击.是否有解决方法来解决这个问题,以便我可以检测每个点击并获取链接?任何关于这个的指针都会很棒!解决方法像这样更改addobserver在observeValue函数中,您可以获得两个值

  10. ios – 在Swift的UIView中找到UILabel

    我正在尝试在我的UIViewControllers的超级视图中找到我的UILabels.这是我的代码:这是在Objective-C中推荐的方式,但是在Swift中我只得到UIViews和CALayer.我肯定在提供给这个方法的视图中有UILabel.我错过了什么?我的UIViewController中的调用:解决方法使用函数式编程概念可以更轻松地实现这一目标.

返回
顶部