iOS 18 UIKit纯代码与MVVM实战精解
第1章_项目初始化与配置
1.1_创建不含Storyboard的新项目
1.2_理解并配置Info.plist中的Application-Scene-Manifest
1.3_删除Storyboard文件及相关引用
1.4_修改项目设置以移除主界面接口文件
第2章_应用生命周期与窗口设置
2.1_理解AppDelegate的角色与职责
2.2_配置SceneDelegate以管理UI场景
2.3_在SceneDelegate中手动创建UIWindow
2.4_设置根视图控制器(RootViewController)
2.5_使窗口可见并成为主窗口
第3章_常用视图(View)组件
3.1_创建和配置UILabel
3.2_创建和配置UIButton及事件处理
3.3_创建和配置UITextField与UITextView
3.4_创建和配置UIImageView
3.5_创建和配置UIView作为容器
第4章_布局系统:Auto-Layout
4.1_关闭translatesAutoresizingMaskIntoConstraints
4.2_使用NSLayoutConstraint进行布局
4.3_使用Layout-Anchors简化约束代码
4.4_使用NSLayoutAnchor激活约束
4.5_动态修改和更新约束
第5章_布局系统:UIStackView
5.1_创建和配置UIStackView
5.2_设置distribution和alignment属性
5.3_动态添加和移除arrangedSubviews
5.4_在UIStackView中实现间距(spacing)
第6章_控制器与导航
6.1_纯代码实现UINavigationController
6.2_执行Push和Pop操作
6.3_纯代码实现UITabBarController
6.4_以模态方式(Present)呈现ViewController
第7章_列表视图:UITableView
7.1_纯代码创建UITableView
7.2_注册UITableViewCell类
7.3_实现UITableViewDataSource协议
7.4_实现UITableViewDelegate协议
7.5_处理Cell的重用机制
第8章_网格视图:UICollectionView
8.1_纯代码创建UICollectionView与Layout
8.2_使用UICollectionViewCompositionalLayout布局
8.3_注册UICollectionViewCell类
8.4_实现UICollectionViewDataSource协议
8.5_实现UICollectionViewDelegate协议
第9章_MVVM模式角色解析
9.1_Model:定义数据结构与业务逻辑
9.2_View:UI的声明式表示与用户交互
9.3_ViewModel:视图状态管理与业务逻辑处理
9.4_MVVM中的数据流与职责划分
第10章_数据绑定(Data-Binding)机制
10.1_理解数据绑定的概念
10.2_使用闭包(Closures)实现简单绑定
10.3_使用键值观察(KVO)实现绑定
10.4_引入响应式编程框架(如Combine)进行绑定
10.5_实现ViewModel到View的单向数据流
第11章_MVVM中的通信与依赖
11.1_View与ViewModel的通信方式
11.2_ViewModel与Model的交互
11.3_使用依赖注入(DI)解耦ViewModel
11.4_路由(Routing)与导航逻辑的抽离
第12章_构建MVVM基础结构
12.1_创建基础的ViewModel协议
12.2_创建Model层的数据结构
12.3_创建ViewController作为View层
12.4_创建对应的ViewModel类
第13章_实现数据绑定与UI更新
13.1_在ViewModel中定义可观察的属性
13.2_在ViewController中订阅ViewModel的属性变化
13.3_当ViewModel数据变化时更新UI组件
13.4_将UI事件(如按钮点击)转发给ViewModel
第14章_处理网络请求与异步操作
14.1_在ViewModel中封装网络请求逻辑
14.2_定义加载状态(Loading、Success、Error)
14.3_将加载状态绑定到UI、显示加载指示器
14.4_处理并向UI层报告网络错误
第15章_列表页面的MVVM实现
15.1_为列表创建ListViewModel
15.2_为列表项创建CellViewModel
15.3_在ViewController中将ViewModels绑定到UITableView
15.4_处理用户在列表中的交互操作
第16章_导航与页面跳转
16.1_创建Coordinator模式来管理导航
16.2_由ViewModel发起导航请求
16.3_Coordinator响应请求并执行页面跳转
16.4_实现ViewModel之间的数据传递
第17章_iOS18-UIKit更新
17.1_探索iOS18中UIKit的新增API
17.2_适配新的UI设计规范和组件
17.3_利用Swift新特性简化代码
第18章_代码优化与重构
18.1_将视图代码封装到自定义UIView子类
18.2_使用泛型增强ViewModel和View的可重用性
18.3_编写单元测试来验证ViewModel逻辑
18.4_编写UI测试来验证用户界面