在 iOS 应用开发中,搜索组件与对话框是连接用户意图与数据展示的关键桥梁。李宁老师的这一季课程专门针对 Swift 生态下的 SearchBar 和 Dialog 进行了深度拆解,旨在帮助开发者掌握从基础控件到高级控制器的完整实现路径。

课程前半部分重点讲解搜索功能的演进。iOS 8 推出的 UISearchController 是目前的主流方案,但许多开发者对其集成方式仍感到困惑。课程通过循序渐进的章节,详细演示了如何将搜索栏嵌入界面,并重点解决了“仅使用一个 TableViewController 进行数据过滤”这一高频面试考点与工程难点。此外,课程还覆盖了占位符修改、取消按钮文案定制以及范围选择按钮(ScopeButton)的配置,让搜索结果更具针对性。为了夯实基础,课程并未止步于新控制器,而是进一步剖析了传统 UISearchBar 控件的属性与代理方法,确保学员在面对遗留项目或特殊定制需求时也能从容应对。

课程后半部分聚焦于用户交互反馈。对话框(Dialog)虽看似简单,却涵盖了标准确认、文本输入采集、ActionSheet 列表选择以及 Popover 悬浮展示等多种形态。每一种形态都对应着特定的业务场景,课程通过代码实例展示了如何根据交互目的选择最合适的控件,避免滥用弹窗导致的用户体验下降。

【学习门槛与顺序】本系列适合已掌握 Swift 基础语法及 UIKit 基本概念的开发者。建议严格按视频顺序学习,先建立 UISearchController 的现代开发思维,再通过 UISearchBar 理解底层逻辑,最后结合对话框案例强化 UI 组件的综合运用能力。无需预先准备额外工具,跟随视频步骤即可同步编码。

【资料用法】资料包中的视频文件按知识点切片,时长紧凑。建议采用“理论先行,代码跟进”的策略:先通看 1-1 和 2-1 建立全局认知,再针对 1-4 这种逻辑复杂的单一控制器过滤场景反复观看并手敲代码,最后通过自定义文本等小节进行细节微调练习,以巩固记忆。

【学完产出】完成本季学习后,你将具备独立构建高级搜索界面的能力,包括支持多维度筛选的复杂搜索逻辑;同时能够根据业务场景灵活实现各类对话框交互。这些实战技能可直接应用于个人项目或商业开发,显著提升 iOS 客户端的交互质量与代码规范性。

课程目录

课程目录17 集
  • 1-1 [搜索条(SearchBar)] SearchBar(1):原理和准备工作 (16:39).mp4
  • 1-2 [搜索条(SearchBar)] SearchBar(2):使用UISearchController添加SearchBar (20:04).mp4
  • 1-3 [搜索条(SearchBar)] SearchBar(3):添加ScopeButton完成不同的过滤 (05:47).mp4
  • 1-4 [搜索条(SearchBar)] SearchBar(4):只拥有一个TableViewController的SearchBar (24:25).mp4
  • 1-5 [搜索条(SearchBar)] SearchBar(5):修改Placeholder文本 (03:10).mp4
  • 1-6 [搜索条(SearchBar)] SearchBar(6):修改Cancel Button的文本 (04:02).mp4
  • 1-7 [搜索条(SearchBar)] SearchBar(7):UISearchBar控件(1) (08:08).mp4
  • 1-8 [搜索条(SearchBar)] SearchBar(8):UISearchBar控件(2) (11:28).mp4
  • 1-9 [搜索条(SearchBar)] SearchBar(9):UISearchBar控件(3) (10:12).mp4
  • 1-10 [搜索条(SearchBar)] SearchBar(10):UISearchBar控件(4) (05:29).mp4
  • 2-1 [对话框(Dialog)] 带按钮的对话框 (12:43).mp4
  • 2-2 [对话框(Dialog)] 带文本输入框(UITextField控件)的对话框 (15:36).mp4
  • 2-3 [对话框(Dialog)] ActionSheet风格的对话框 (06:30).mp4
  • 2-4 [对话框(Dialog)] Popover风格的对话框 (07:37).mp4
  • 2-5 [对话框(Dialog)] ActivityView对话框(1):显示系统按钮 (10:59).mp4
  • 2-6 [对话框(Dialog)] ActivityView对话框(2):自定义Activity (19:57).mp4
  • 2-7 [对话框(Dialog)] ActivityView对话框(3):点击按钮弹出Activity (07:47).mp4