ContentUnavailableView 教程:SwiftUI 空状态设计的完整指南
【免费下载链接】SwiftUI-Agent-SkillSwiftUI agent skill for Claude Code, Codex, and other AI tools.项目地址https://gitcode.com/GitHub_Trending/swi/SwiftUI-Agent-Skill点击查看免费下载ContentUnavailableView是 SwiftUI 内置的系统级空状态组件而 SwiftUI-Agent-Skill 项目提供的 SwiftUI Pro 技能会把优先使用 ContentUnavailableView 而非自定义设计作为硬性规则直接教给 Claude Code、Codex 等 AI 编码助手。这篇教程带你理解它的定位、两大系统场景以及如何借助 swiftui-pro/SKILL.md 的审查流程把 App 里的空状态设计一次性系统化。为什么空状态需要系统化空状态没有数据、加载失败、搜索无结果是每个 App 都无法回避的界面。手写它容易踩坑 文案、字体、留白各页面不一致App 看起来拼装感很强♿ 忽略 VoiceOver 与 Dynamic Type无障碍不合格 在深色模式、小屏、大字号下表现不稳定SwiftUI 从 iOS 17 起提供了ContentUnavailableView用一个组件就解决了以上问题。而 SwiftUI-Agent-Skill 的意义在于把该用系统组件这条经验变成 AI 助手每次写代码、做审查时都遵守的规范。两种最值得使用的系统场景场景一数据为空Data Unavailable列表、集合、云同步失败等这里本来应该有内容的页面直接给一个描述即可ContentUnavailableView( No Folders, systemImage: folder.badge.questionmark, description: Text(Folders you create will appear here.) )描述、图标、提示三段式结构系统会自动处理居中布局、层级颜色与动态字体缩放——你不需要写任何布局代码。场景二搜索无结果Search Unavailable配合searchable()使用时推荐直接用搜索特化版本if searchResults.isEmpty { ContentUnavailableView.search }这里有一个非常容易被 AI和新手写错的点ContentUnavailableView.search会自动带上用户输入的搜索词无需再写成ContentUnavailableView.search(text: searchText)之类的冗余形式。这一条就写在项目的设计规范里参见 swiftui-pro/references/design.md空状态设计系统化AI 审查如何兜底在 Claude Code 中输入/swiftui-pro在 Codex 中输入$swiftui-pro也可以直接说用 SwiftUI Pro 技能检查这个项目的空状态设计。技能会按 swiftui-pro/SKILL.md 中的流程依次核对 API、视图、数据流、导航、设计、无障碍、性能等维度其中设计规范来自设计规则清单swiftui-pro/references/design.md标准系统样式一节第 15–23 行无障碍要求VoiceOver、动态字体swiftui-pro/references/accessibility.md技能主入口swiftui-pro/SKILL.md审查输出会按文件组织指出具体行号、违反的规则并给出前后对比的修改建议例如这里手写了 VStack Text 的空状态应改为 ContentUnavailableView。配套规则速查表 同一份设计规范里与空状态页面紧密相关的还有这几条场景推荐做法避免图标 文字横排Label手写HStack次级视觉层级系统层级样式secondary/tertiary手动调opacity标题 控件/数值LabeledContentForm 内外均可用自行拼接布局圆角RoundedRectangle默认即.continuous重复显式指定字号语义化字体.body、.caption硬编码字号慎用.caption2详见 swiftui-pro/references/design.md。上手建议3 个要点总结能用系统组件就不自己设计——ContentUnavailableView 自带统一视觉、深色模式适配与无障碍支持。搜索页用ContentUnavailableView.search——自动附带搜索词少传一个参数少一个出错点。把规范交给 AI 兜底——安装 SwiftUI Pro 技能后让 AI 审查替你守住一致性这条底线你只专注业务逻辑。这套规则的完整上下文项目定位、安装方式可以查看 README.md技能的可移植规则文件位于 swiftui-pro/skills/swiftui-pro/SKILL.md。赞分享【免费下载链接】SwiftUI-Agent-SkillSwiftUI agent skill for Claude Code, Codex, and other AI tools.项目地址https://gitcode.com/GitHub_Trending/swi/SwiftUI-Agent-Skill点击查看免费下载相关推荐nlp-roadmap项目深度解析从概率统计到SOTA模型的完整学习路径nlp roadmap项目深度解析从概率统计到SOTA模型的完整学习路径 想要系统学习自然语言处理NLP却不知从何开始nlp roadmap项目为你提供SwiftUI Introspect 终极指南突破 SwiftUI 限制的完整教程SwiftUI Introspect 终极指南突破 SwiftUI 限制的完整教程 SwiftUI Introspect 是一款强大的开源工具它让开发者能够开发工具FunClip使用指南本地部署AI视频剪辑3步把2小时会议录像变成精华片段FunClip使用指南本地部署AI视频剪辑3步把2小时会议录像变成精华片段 FunClip 是一款本地部署的开源AI视频剪辑工具基于阿里达摩院 FunAS音视频语音人工智能AI 应用本地部署创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

C#台账系统设计:实现可追溯、防篡改的企业级数据记录

C#台账系统设计:实现可追溯、防篡改的企业级数据记录

简介:这是一套基于C#开发的轻量级台账记录系统设计源码,面向中小型组织、企业行政或财务人员及C#初学者,解决日常台账录入、查询、修改与删除等基础管理需求。资源共67个文件,压缩包大小384KB,包含41个核心C#源文件&am…

2026/10/11 11:43:13 阅读更多 →
StealthChop+如何让步进电机逼近BLDC性能

StealthChop+如何让步进电机逼近BLDC性能

1. 为什么说“步进电机的天花板”正在被重新定义?最近在某高校机电实验室调试一台高精度3D打印平台时,我遇到一个典型矛盾:客户要求Z轴在0.01mm级微动下完全静音、无振动,同时还要在快速回零时保持200mm/s的瞬时加速度。传统细分驱…

2026/10/11 11:42:13 阅读更多 →
基于S7-200与组态王的Z35摇臂钻床PLC控制系统设计

基于S7-200与组态王的Z35摇臂钻床PLC控制系统设计

1. 项目概述与需求拆解1.1 Z35摇臂钻床的工艺特点与控制要求接手这类题目,我一般先不急着画梯形图,而是先把设备的机械结构和动作流程走一遍。Z35摇臂钻床是典型的通用机床,整体由底座、立柱、摇臂、主轴箱和工作台组成。摇臂可以绕立柱回转&…

2026/10/11 11:42:13 阅读更多 →

最新新闻

Java 实现超大附件上传:分片、断点续传与合并校验实战

Java 实现超大附件上传:分片、断点续传与合并校验实战

很多做文件上传功能的同学,第一次接到“超大附件”需求时都以为只是加个参数、调大内存就能搞定。结果一跑真实文件,几百 MB 可能还能撑住,到了几个 GB 甚至十几个 GB,要么请求超时,要么服务端内存直接打满&#xff0c…

2026/10/11 13:35:01 阅读更多 →
私有化交付自动化巡检引擎:编写覆盖 50 项软硬件指标的零依赖前置验收脚本

私有化交付自动化巡检引擎:编写覆盖 50 项软硬件指标的零依赖前置验收脚本

在私有化项目交付的“翻车排行榜”上,排在第一名的永远不是“业务系统有 Bug”,而是“客户提供的底层服务器环境存在极其隐蔽的致命硬伤”:实施工程师辛辛苦苦在客户内网机房忙活了整整一天,终于把全部容器和微服务拉齐&#xff0…

2026/10/11 13:35:01 阅读更多 →
微服务核心降级矩阵实战:当上游依赖与第三方支付瘫痪时如何保住核心交易

微服务核心降级矩阵实战:当上游依赖与第三方支付瘫痪时如何保住核心交易

在大促高并发或突发网络割接等极端场景下,分布式微服务系统最危险的状态不是“所有机器全死”,而是“某一个非核心的下游依赖半死不活”:比如商品详情页调用的“个性化推荐服务”突然发生 GC 停顿,响应耗时从 10ms 拉长到 3 秒&am…

2026/10/11 13:35:01 阅读更多 →
红外电力设备目标检测数据集实战:从VOC转YOLO到切图推理全流程

红外电力设备目标检测数据集实战:从VOC转YOLO到切图推理全流程

简介:这份红外电力设备目标检测数据集面向电力AI检测、智能电网运维及计算机视觉方向的研究者与开发者,提供可直接用于YOLO系列模型训练的真实热成像标注数据。资源包共2000个文件,以1474个txt标注文件、524张jpg热成像图片为主,另…

2026/10/11 13:35:01 阅读更多 →
Java超大文件分片上传实战:解决OOM与连接超时

Java超大文件分片上传实战:解决OOM与连接超时

在 Java 后端开发里,“JAVA http 请求”本身不算难事,难点是当请求体变成几个 GB 的超大附件时,问题会全部冒出来。我之前负责一个数据文件交换平台,用户经常上传 3GB、6GB 的现场采集包,最初同事按普通 Multipart 方式…

2026/10/11 13:35:01 阅读更多 →
SS728M05身份证验证终端Windows接口包对接指南:从DLL调用到稳定部署

SS728M05身份证验证终端Windows接口包对接指南:从DLL调用到稳定部署

简介:面向Windows平台的神思SS728M05身份证验证SDK开发包,专供需要集成二代身份证读取、解码与真伪校验的开发者使用。接口封装了神思硬件设备的底层通信协议,适用于银行开户、网络实名认证、酒店登记等实名制场景,开发者无需深入…

2026/10/11 13:34:01 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →