章节1: 1-课程简介 课时1 视频 1-1占位视频,稍后补上。可略过 00:03 可章节2: 2-外卖App点菜页-两个tableView联动 课时2 视频 2-1页面不全是tableView的场景-UITableView 09:14 可课时3 视频 2-2两个tableView+配置演示数据 12:20 可课时4 视频 2-3配置两个tableView的section和row以及cell的UI 09:48 可课时5 视频 2-4配置两个tableViewCell里的内容 07:59 可课时6 视频 2-5处理常见的tableView约束错误+rowHeight 05:37课时7 视频 2-6tableView的sectionHeader+xib初探 06:47课时8 视频 2-7配置sectionHeader的内容 10:42课时9 视频 2-8点击左侧tableViewCell使右边tableView联动 05:09课时10 视频 2-9设置cell被选中后的样式及初始被选中cell 06:51课时11 视频 2-10因右tableView向上滚动导致header出现时联动左tableView 09:46课时12 视频 2-11判断用户正在上滑还是下滑 06:22课时13 视频 2-12因右tableView向下滚动导致header消失时联动左tableView 03:26章节3: 3-Swift语言-进阶课时14 视频 3-1存储属性的局限性+计算属性的getter 11:16课时15 视频 3-2计算属性的setter 12:14课时16 视频 3-3只读计算属性 03:57课时17 视频 3-4使用面向对象让代码变得更灵活 14:28课时18 视频 3-5属性观察者 12:50课时19 视频 3-6属性观察者的实际应用场景 05:39课时20 视频 3-7类型属性-static和class 10:56课时21 视频 3-8访问权限-private 08:40课时22 视频 3-9访问权限-fileprivate,internal,public,open 09:52课时23 视频 3-10值类型数据和引用类型数据在内存中的存储形式 06:13课时24 视频 3-11拷贝值类型数据和引用类型数据时的区别 11:38课时25 视频 3-12值类型数据和引用类型数据的使用场景 11:29章节4: 4-UICollectionView-Flow布局课时26 视频 4-1UICollectionView初探 12:15课时27 视频 4-2配置cell的内容+cell的EstimatedSize 13:15课时28 视频 4-3UICollectionViewFlowLayout滚动方向+最小列间距+最小行间距 12:04课时29 视频 4-4UICollectionViewFlowLayout的sectionInset+三种设属性的方法 05:00课时30 视频 4-5UICollectionViewDelegateFlowLayout-动态设置cell的size 14:40课时31 视频 4-6UICollectionViewFlowLayout对象的知识拾遗 06:09课时32 视频 4-7代码优化+控制台里显示的内容究竟是错误还是单纯的日志 10:23课时33 视频 4-8collectionView的sectionHeader 10:39课时34 视频 4-9配置sectionHeader里的内容 14:14课时35 视频 4-10数据源优化 07:04课时36 视频 4-11Switch语句 11:27章节5: 5-UICollectionView-瀑布流布局课时37 视频 5-1UICollectionView实战之瀑布流布局-项目准备 16:08课时38 视频 5-2用自带的Flow布局完成初始项目 13:52课时39 视频 5-3模仿系统自带的Flow布局创建子类+配置属性 08:03课时40 视频 5-4配置delegate+仅class可遵循的协议 09:04课时41 视频 5-5自定义布局需要重写的一个属性和三个方法 10:32课时42 视频 5-6配置瀑布流collectionView的ContentSize 07:10课时43 视频 5-7cell的布局属性+计算出每个cell的宽高 15:06课时44 视频 5-8计算出每个cell的x轴坐标 12:45课时45 视频 5-9计算每个cell的y轴坐标功能分析 15:25课时46 视频 5-10每次循环结束后更新y轴坐标数组及列以供下一个cell使用 12:27课时47 视频 5-11配置可视区域内cell以及所有cell的布局属性 11:55课时48 视频 5-12根据cell宽度等比例缩放图片+封装瀑布流布局的使用 11:23章节6: 6-手势UIGestureRecognizer课时49 视频 6-1在storyboard上添加轻触手势UITapGestureRecognizer 15:55课时50 视频 6-2父类UIGestureRecognizer的view属性和state属性 09:29课时51 视频 6-3用代码添加手势 14:02课时52 视频 6-4UIView的transform属性-旋转缩放和平移 11:28课时53 视频 6-5在已有transform效果的基础上追加transform+动画 10:24课时54 视频 6-6捏合手势UIPinchGestureRecognizer 11:08课时55 视频 6-7旋转手势UIRotationGestureRecognizer 06:16课时56 视频 6-8轻扫手势UISwipeGestureRecognizer 05:28课时57 视频 6-9平移拖拽手势UIPanGestureRecognizer 13:23课时58 视频 6-10屏幕边缘平移手势UIScreenEdgePanGestureRecognizer 09:28课时59 视频 6-11长按手势UILongPressGestureRecognizer 07:36章节7: 7-UIScrollView课时60 视频 7-1UIScrollView初探 08:25课时61 视频 7-2ContentLayoutGuide 15:36课时62 视频 7-3让scrollView中的内容可以被缩放 16:05课时63 视频 7-4设定内容视图缩放比例+初探frame和bounds的区别 10:36课时64 视频 7-5viewDidLayoutSubviews+属性对应的动画方法 07:54课时65 视频 7-6偏移和内边距+translatesAutoresizingMaskIntoConstraints 12:25课时66 视频 7-7在scrollViewDidZoom中实时改变内容视图的center坐标 08:41课时67 视频 7-8UIView的frame,bounds,center属性 14:25课时68 视频 7-9利用相对宽高算出中心点的坐标 08:06课时69 视频 7-10取消自动适配safearea+automatic执行原理 05:34课时70 视频 7-11缩放长图时的处理 08:57课时71 视频 7-12不使用ContentLayoutGuide完成之前的功能 11:35课时72 视频 7-13一些小知识 04:56章节8: 8-用UIScrollView制作App引导页课时73 视频 8-1需求分析 04:33课时74 视频 8-2配置ContentLayoutGuide 08:04课时75 视频 8-3pdf图片+以scrollView的frame大小为单位进行分页滑动 04:48课时76 视频 8-4分页小圆点pageControl 11:35课时77 视频 8-5动态指定App首页+用户首次启动App时才展示引导页 10:32课时78 视频 8-6用户滑完引导页之后展示首页 10:04章节9: 9-UITabBarController课时79 视频 9-1UITabBarController初探+仿微信tabbar 10:22课时80 视频 9-2UITabBarItem+运行机制+图标大小 10:01课时81 视频 9-3图片的渲染模式renderingMode+tabbar的tintColor属性 12:41课时82 视频 9-4设置tabbarItem被选中之后的图标样式 10:26课时83 视频 9-5子VC里面是非scrollView时tabbar的默认样式 07:23课时84 视频 9-6子VC里面是同等大小scrollView时tabbar的默认样式 07:04课时85 视频 9-7子VC里面是scrollView时tabbar的默认样式 05:03课时86 视频 9-8scrollEdgeAppearance和standardAppearance 08:09课时87 视频 9-9把子VC按需embed进navigationController 06:43课时88 视频 9-10用代码全局修改navigationBar的样式 06:58课时89 视频 9-11调整tabBarItem的顺序+删除子VC+功能优化 06:05课时90 视频 9-12仿淘宝tabbar 10:05课时91 视频 9-13UITabBarDelegate+数组的firstIndexOf方法 15:34课时92 视频 9-14UITabBarItem的imageInsets 12:08课时93 视频 9-15UITabBarControllerDelegate 04:45课时94 视频 9-16配置tabBarItem未选中及选中时的样式UITabBarItemAppearance 14:47课时95 视频 9-17配置tabBarItem未选中时文本的颜色和字体 11:52章节10: 10-解析JSON数据课时96 视频 10-1SwiftyJSON的局限性+三引号语法+字符串转Data 10:55课时97 视频 10-2定义一个属性和JSON的key完全一样的model 09:00课时98 视频 10-3Codable协议 10:36课时99 视频 10-4属性不一定要写全+可选型属性 04:11课时100 视频 10-5把JSON数据中的字符串值解析为枚举型 14:29课时101 视频 10-6解析数组类型的JSON数据 05:10课时102 视频 10-7自定义映射CodingKeys 14:13课时103 视频 10-8下划线命名的key和小驼峰命名的属性的映射 10:21课时104 视频 10-9定义没有对应的属性时的四种方法 07:39课时105 视频 10-10UserDefaults中的编码和解码 04:51章节11: 11-用纯代码写一个小项目课时106 视频 11-1解析Xcode文件中的JSON数据 13:43课时107 视频 11-2创建window对象+配置首页 10:37课时108 视频 11-3用代码创建UITableView+注册cell 12:04课时109 视频 11-4添加子视图addSubview+用代码做约束 12:48课时110 视频 11-5配置演示数据+safearea相关知识点 14:38课时111 视频 11-6cell的初始化方法+用代码创建UILabel 13:55课时112 视频 11-7用代码创建iOS15版本之前的UIButton 08:25课时113 视频 11-8用代码创建UIStackView 07:54课时114 视频 11-9用代码做四边距离的常量约束 14:17课时115 视频 11-10每个view只能有一个父视图 08:37课时116 视频 11-11动态创建stackView中的button 09:54课时117 视频 11-12配置iOS15新版button 13:25课时118 视频 11-13新版button的文本背景色+配置其余数据 04:41章节12: 12-自定义转场动画课时119 视频 12-1转场的三个场景+自定义Modally转场动画项目预览 14:46课时120 视频 12-2transitionContext+containerView+fromView+toView 17:33课时121 视频 12-3Modally转场非交互动画-Present时 18:24课时122 视频 12-4给imageview加tap手势+fromView不见了 14:53课时123 视频 12-5Modally转场非交互动画-dismiss时+动画结束后的清理操作 16:21课时124 视频 12-6Modally转场交互动画+探索Swift init 13:28课时125 视频 12-7UIPercentDrivenInteractiveTransition 11:10课时126 视频 12-8transitionWasCancelled+交互状态 14:56课时127 视频 12-9NavigationController转场动画-push时 15:24课时128 视频 12-10NavigationController转场动画-pop时+阴影shadow 18:04课时129 视频 12-11NavigationController转场交互动画 17:29课时130 视频 12-12TabBarController-项目准备 05:17课时131 视频 12-13TabBarController转场动画-自定义枚举型+共用一个动画器 14:01课时132 视频 12-14用frame.origin实现偏移动画 13:26课时133 视频 12-15TabBarController转场交互动画-selectedIndex 16:24课时134 视频 12-16左滑和右滑的progress 07:13课时135 视频 12-17使用第三方动画包Hero-仅几行代码便可完成神级动画(上) 16:25课时136 视频 12-18使用第三方动画包Hero-仅几行代码便可完成神级动画(下) 11:43章节13: 13-物联网核心-蓝牙开发课时137 视频 13-1短距离通信技术+蓝牙的优势+中心设备Central+外设Peripheral 12:14课时138 视频 13-2用LightBlue模拟虚拟外设+Service+Characteristic+UUID 10:19课时139 视频 13-3iOS作为中心设备和智能硬件数据交互-项目需求+UI 09:17课时140 视频 13-4扫描外设+连接外设 18:18课时141 视频 13-5寻找服务和特征 10:22课时142 视频 13-6写入特征值(给外设发送指令) 12:30课时143 视频 13-7读取特征值+订阅特征值 11:53课时144 视频 13-8动态写入特征值+项目演示 08:58课时145 视频 13-9总结 08:55课时146 视频 13-10iOS设备作为外设-UI+CBPeripheralManager 12:05课时147 视频 13-11创建服务和特征+开始广播 11:11课时148 视频 13-12处理中心设备的读写请求 13:46课时149 视频 13-13处理中心设备的订阅请求+Timer+Date 10:09课时150 视频 13-14传输队列已满时的处理+总结 05:43课时151 视频 13-15iOS设备作为中心设备和iOS外设数据交互 20:22章节14: 14-ContainerView课时152 视频 14-1AVPlayer 11:06课时153 视频 14-2AVPlayerViewController+添加子视图控制器 14:34课时154 视频 14-3静态添加ContainerView+众多的ContainerViewController 15:48课时155 视频 14-4在父vc中获取子vc的两种方法+父子viewdidload执行顺序 07:53课时156 视频 14-5动态添加ContainerView 15:11课时157 视频 14-6用约束动态添加ContainerView+移除ContainerView 13:19章节15: 15-WKWebView课时158 视频 15-1混合开发的核心WKWebView+加载网站 11:43课时159 视频 15-2用loadView回调函数把webView设为根视图 10:56课时160 视频 15-3WKWebViewConfiguration+WKWebView属性 12:09课时161 视频 15-4Extension 08:15课时162 视频 15-5WKUIDelegate+逃逸闭包@escaping 19:46课时163 视频 15-6WKNavigationDelegate-HTTP请求和响应+加载小菊花 20:35课时164 视频 15-7navigationAction+navigationResponse 18:01课时165 视频 15-8注入HTML字符串loadHTMLString 10:40课时166 视频 15-9注入web前端文件和JS代码 10:21课时167 视频 15-10加载进度+KVO观察者 09:43课时168 视频 15-11用WKUserContentController和web前端进行数据交互 10:24课时169 视频 15-12生成截图+WKHTTPCookieStore 12:18章节16: 16-git+github+版本控制课时170 视频 16-1git add+git commit 11:48课时171 视频 16-2git acm+git checkout 09:37课时172 视频 16-3手到擒来-在Xcode上把代码commit到本地仓库 13:24课时173 视频 16-4在Xcode上创建分支branch+合并分支merge+切换分支checkout 16:49课时174 视频 16-5远程仓库GitHub+在Xcode上把代码push进远程仓库 14:19课时175 视频 16-6从远程仓库clone代码进Xcode+pull更新代码 10:53课时176 视频 16-7.gitignore文件 11:22课时177 视频 16-8[了解]为开源助力-fork+pull request 10:53章节17: 17-应用内购买IAP课时178 视频 17-1应用内购买+鸡汤App预览 03:46课时179 视频 17-2添加银行账户和App ID+UI实现 15:47课时180 视频 17-3添加沙盒测试Apple ID+用StoreKit实现应用内购买 17:36课时181 视频 17-4结合本地存储Userdefaults完成UI和优化项目 11:47课时182 视频 17-5恢复购买restore+对已购用户隐藏恢复购买按钮 09:05章节18: 18-AI机器学习-CoreML2课时183 视频 18-1Label+Input+Output+Trained Model+图像识别App 12:22课时184 视频 18-2图像选择器UIImagePickerController 16:00课时185 视频 18-3用CoreML2和Vision完成图像识别功能(上) 15:13课时186 视频 18-4用CoreML2和Vision完成图像识别功能(下) 15:56课时187 视频 18-5Python+pip+安装coremltools 14:57课时188 视频 18-6[了解]如何找到适合iOS的训练好的python模型 08:02课时189 视频 18-7终端基本操作+用coremltools把模型转化为mlmodel 16:25课时190 视频 18-8小练习-花卉识别App 03:21课时191 视频 18-9用CreateML制作属于自己的图像识别的mlmodel 12:36课时192 视频 18-10用CreateML制作自然语言处理(NLP)的情感分析类mlmodel 24:02章节19: 19-AI机器学习新功能-CoreML3课时193 视频 19-1iOS13机器学习的新功能+CoreML3 10:00课时194 视频 19-2临摹比赛App初始代码+需求分析 10:22课时195 视频 19-3iOS13新框架VisionKit-系统封装的文件扫描功能 10:47课时196 视频 19-4临摹比赛App扫描页面剩余业务逻辑-文件管理FileManager 07:23课时197 视频 19-5算出原图的图像特征 14:57课时198 视频 19-6算出临摹画和原画的差距值distance 13:47课时199 视频 19-7识别图像中的人眼着重点-显著性分析Saliency Analysis 08:48课时200 视频 19-8识别人脸拍摄质量Capture Quality+iOS13图像识别的实际应用 07:06课时201 视频 19-9[了解]文本识别Text Recognition 08:25课时202 视频 19-10[了解]语音识别Speech 04:02章节20: 20-AR黑科技和ARKit2课时203 视频 20-1ARKit2+AR应用+AR模版 16:19课时204 视频 20-2世界追踪+UIRequiredDeviceCapabilities 09:21课时205 视频 20-3三维空间+3D模型的属性+静态创建AR地球 16:05课时206 视频 20-4动态创建AR地球+SCNNode 10:11课时207 视频 20-5[仅做了解][新功能见课时21-31]把3D模型文件转化为.scn文件 19:14课时208 视频 20-6平面检测PlaneDetection+锚Anchor+ARPlaneAnchor(上) 12:34课时209 视频 20-7平面检测PlaneDetection+锚Anchor+ARPlaneAnchor(下) 14:47课时210 视频 20-8触屏函数+命中测试+把虚拟茶壶放在现实桌面(上) 16:18课时211 视频 20-9触屏函数+命中测试+把虚拟茶壶放在现实桌面(下) 14:02课时212 视频 20-10测距仪App+VisualEffectView(上) 12:08课时213 视频 20-11测距仪App+VisualEffectView(下) 13:29课时214 视频 20-12AR图像识别+ARImageAnchor+口袋妖怪桌游App(上) 16:59课时215 视频 20-13AR图像识别+ARImageAnchor+口袋妖怪桌游App(下) 17:20章节21: 21-AR新功能-ARKit3+RealityKit课时216 视频 21-1AR新功能概览+RealityKit初探+人物遮挡 13:09课时217 视频 21-2制作UI 10:06课时218 视频 21-3RealityKit的AnchorEntity和ModelEntity+ARKit3 15:44课时219 视频 21-4frameSemantics+personSegmentationWithDepth 09:53课时220 视频 21-5延迟执行asyncAfter+分离代码进子类 14:04课时221 视频 21-6身体动作捕捉MotionCapture--项目预览 11:48课时222 视频 21-7异步加载机器人模型+用值绑定取出枚举型关联值 09:30课时223 视频 21-8获取ARBodyAnchor并给机器人模型定大小位置方向 15:40课时224 视频 21-9Publisher+AnyCancellable 11:30课时225 视频 21-10世界追踪中的面部追踪--项目需求分析 08:02课时226 视频 21-11初始项目代码 13:46课时227 视频 21-12ARCoachingOverlayView+ARView 14:27课时228 视频 21-13利用didUpdateframe方法放置虚拟模型+设置虚拟模型外观 13:40课时229 视频 21-14设置各种状态下的虚拟模型外观+ARFaceAnchor 12:02课时230 视频 21-15利用前置摄像头跟踪人脸面部表情 14:14课时231 视频 21-16设置虚拟模型的位置和方向+定格表情reanchor 15:55课时232 视频 21-17AR联机--需求分析+短距离通信协议MultipeerConnectivity 12:30课时233 视频 21-18闭包属性+在世界追踪中开启Collaboration功能 11:17课时234 视频 21-19定期向联机用户输出自己的合作数据+合并世界地图 15:27课时235 视频 21-20放置虚拟坐标球+接收别的联机用户的数据 16:19课时236 视频 21-21放置虚拟物体+联机用户实时交互 16:17课时237 视频 21-22AR原型工具Reality Composer--功能总览+项目需求 09:44课时238 视频 21-23模型的transform+外观+吸附+空间坐标 15:23课时239 视频 21-24五个基本的AnchorEntity场景 05:20课时240 视频 21-25模型的行为+触发器+操作序列 07:55课时241 视频 21-26模型的物理行为+碰撞交互 08:47课时242 视频 21-27给机器人模型加行为+usdz动画 07:01课时243 视频 21-28自动生成加载方法+通知触发器+工具和代码实时同步 14:45课时244 视频 21-29把虚拟模型导出为reality文件和usdz文件 12:26课时245 视频 21-30创建简易AR体验--QuickLook+QLPreviewController 10:41课时246 视频 21-31图形化的模型转换工具Reality Converter 13:25