PDF 课件和源代码下载地址:
作者回复: 可以使用SubView来实现。目前这两种方式 无论哪种都需要自定义的处理下,才能做到和主流App一样的交互,基本都不是原生的体验了
作者回复: 这样来说比较简单,不用处理动画效果。
作者回复: 示例工程应该是可以使用XCode11跑起来的,系统会向下兼容,并且主流的App也都要支持非iOS13的设备。那么对于在iOS13中新建工程,单独的根据视频删除storyboard是不行的。在删除main.storyboard的时候,在和课程中相同的删除操作之上,也需要删除在info.plist中的Application Scene Manifest中对应storyboard的默认设置。简单的来说如果不使用Main.storyboard,就需要把 info.plist 中 Main.storyboard相关的设置全部删除,并且在SceneDelegate中自己实现window。SceneDelegate和Appdelegate这部分在iOS13中也有了变化,可以参考对应课程下方的留言,或者直接看https://developer.apple.com/videos/play/wwdc2019/42 这个session
作者回复: xcode11之后稍微有了些变化。在删除main.storyboard的时候,在和课程中相同的删除操作之上,也需要删除在info.plist中的Application Scene Manifest中对应storyboard的默认设置。简单的来说如果不使用Main.storyboard,就需要把info.plist和Main.storyboard相关的设置全部删除,并且在SceneDelegate中自己实现window。SceneDelegate和Appdelegate这部分在iOS13中也有了变化,可以参考下面的留言,或者直接看https://developer.apple.com/videos/play/wwdc2019/42 这个session
作者回复: 是的。iOS13之后,appdelegate的指责发生了变化,具体的可以参考https://developer.apple.com/videos/play/wwdc2019/42 这个session。 简单的说和UI生命周期相关的回调都交给了SceneDelegate 这个delegate,而appdelegate主要负责 app 生命周期相关的回调。对于window来说,作为一个特殊的UI,也自然的变成了SceneDelegate的一个property,我们可以在SceneDelegate的头文件中找到它,并在willConnectToSession这个函数中使用。同时在删除main.storyboard的时候,在和课程中相同的删除操作之上,也需要删除在info.plist中的Application Scene Manifest中对应storyboard的默认设置