<feed xmlns="http://www.w3.org/2005/Atom"> <id>https://www.sunyazhou.com</id><title>迈腾大队长</title><subtitle>嗨,我是孙亚洲(@sunyazhou13),一名来自祖国北国冰城的iOS开发者.</subtitle> <updated>2026-04-05T02:19:21+00:00</updated> <author> <name>孙亚洲</name> <uri>https://www.sunyazhou.com</uri> </author><link href="/feed.xml" rel="self" type="application/atom+xml" /><link href="https://www.sunyazhou.com" rel="alternate" type="text/html" /> <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator> <rights> © 2026 孙亚洲 </rights> <icon>/assets/img/favicons/favicon.ico</icon> <logo>/assets/img/favicons/favicon-96x96.png</logo> <entry><title>在 SwiftUI 的 Stack 中避免使用 Spacer</title><link href="https://www.sunyazhou.com/2026/03/avoidspacersinswiftuistacks/" rel="alternate" type="text/html" title="在 SwiftUI 的 Stack 中避免使用 Spacer" /><published>2026-03-16T03:38:00+00:00</published> <updated>2026-04-05T02:19:21+00:00</updated> <id>https://www.sunyazhou.com/2026/03/avoidspacersinswiftuistacks/</id> <content src="https://www.sunyazhou.com/2026/03/avoidspacersinswiftuistacks/" /> <author> <name>孙亚洲</name> </author> <category term="iOS" /> <category term="SwiftUI" /> <summary> 前言 本文具有强烈的个人感情色彩,如有观看不适,请尽快关闭. 本文仅作为个人学习记录使用,也欢迎在许可协议范围内转载或分享,请尊重版权并且保留原文链接,谢谢您的理解合作. 如果您觉得本站对您能有帮助,您可以使用RSS方式订阅本站,感谢支持! 本文翻译自 作者： Pavel Zak 发布： 2023年4月6日 原文： https://nerdyak.tech/development/2023/04/06/avoid-swiftui-spacers-in-stacks.html 阅读时间： 约 1 分钟 在教授 SwiftUI 的过程中，我发现一个非常常见的模式，它会带来一个微妙的布局 bug。 常见写法 1 2 3 4 5 HStack(spacing: 12) { Text(self.text) Spacer() Image(systemName: "tortoise.fill") } 这是个很自然的布局思路——用 Spacer() 把左侧文字和右侧图标分开。但当文本内容较长时，文字和图标之间的间距会比预期的 12pt 大得多。 ... </summary> </entry> <entry><title>使用 SwiftUI Canvas 实现魔幻粒子效果</title><link href="https://www.sunyazhou.com/2026/03/magicalparticleeffectswithswiftuicanvas/" rel="alternate" type="text/html" title="使用 SwiftUI Canvas 实现魔幻粒子效果" /><published>2026-03-16T03:36:00+00:00</published> <updated>2026-04-05T02:19:21+00:00</updated> <id>https://www.sunyazhou.com/2026/03/magicalparticleeffectswithswiftuicanvas/</id> <content src="https://www.sunyazhou.com/2026/03/magicalparticleeffectswithswiftuicanvas/" /> <author> <name>孙亚洲</name> </author> <category term="iOS" /> <category term="SwiftUI" /> <summary> 前言 本文具有强烈的个人感情色彩,如有观看不适,请尽快关闭. 本文仅作为个人学习记录使用,也欢迎在许可协议范围内转载或分享,请尊重版权并且保留原文链接,谢谢您的理解合作. 如果您觉得本站对您能有帮助,您可以使用RSS方式订阅本站,感谢支持! 本文翻译自 作者： Pavel Zak 发布： 2024年6月27日 原文： https://nerdyak.tech/development/2024/06/27/particle-effects-with-SwiftUI-Canvas.html 在我之前的一篇文章中，我分享了一种在 SwiftUI 中创建粒子效果的简单方法——利用 ViewModifier，非常简洁。但我不推荐在生产环境中使用，因为每个粒子都是一个独立的视图，粒子数量稍多时性能开销就会很大。 本文介绍一种更优的替代方案：使用 Canvas 视图来渲染粒子。Let’s go 💪 基础架构 我们从以下视图骨架开始： 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 struct ParticleCanvasView: View {... </summary> </entry> <entry><title>Jekyll博客支持Tab切换代码块</title><link href="https://www.sunyazhou.com/2026/03/JekyllTabsCodeBlock/" rel="alternate" type="text/html" title="Jekyll博客支持Tab切换代码块" /><published>2026-03-01T08:50:00+00:00</published> <updated>2026-04-05T02:19:21+00:00</updated> <id>https://www.sunyazhou.com/2026/03/JekyllTabsCodeBlock/</id> <content src="https://www.sunyazhou.com/2026/03/JekyllTabsCodeBlock/" /> <author> <name>孙亚洲</name> </author> <category term="iOS" /> <category term="SwiftUI" /> <summary> 前言 本文具有强烈的个人感情色彩,如有观看不适,请尽快关闭. 本文仅作为个人学习记录使用,也欢迎在许可协议范围内转载或分享,请尊重版权并且保留原文链接,谢谢您的理解合作. 如果您觉得本站对您能有帮助,您可以使用RSS方式订阅本站,感谢支持! 背景 写博客时经常需要同时展示 Swift 和 Objective-C 两种语言的代码,或者同一个功能的多种实现方式.以前只能把代码块一个个堆在一起,阅读体验很差. 这次给博客加上了 Tab 切换代码块的功能,点击 Tab 标签即可在不同语言/实现之间自由切换,效果类似 VitePress、Docusaurus 等现代文档平台. 实现方案 使用 jekyll-tabs 这个 gem,它的特点是: ✅ 不依赖任何 JS 框架,与已有的 jQuery/Bootstrap 不冲突 ✅ 支持同一页面多个独立 Tab 组 ✅ 支持同名 Tab 跨组联动 ✅ 支持一键复制代码 ✅ 本地构建部署,不受 GitHub Pages 插件限制 安装步骤 第一步: Gemfile 添加依赖 1 2 3 4 group... </summary> </entry> <entry><title>使用libtag库获取音频metadata元数据</title><link href="https://www.sunyazhou.com/2026/01/audiometadata/" rel="alternate" type="text/html" title="使用libtag库获取音频metadata元数据" /><published>2026-01-23T16:06:00+00:00</published> <updated>2026-04-05T02:19:21+00:00</updated> <id>https://www.sunyazhou.com/2026/01/audiometadata/</id> <content src="https://www.sunyazhou.com/2026/01/audiometadata/" /> <author> <name>孙亚洲</name> </author> <category term="iOS" /> <category term="SwiftUI" /> <summary> 前言 本文具有强烈的个人感情色彩,如有观看不适,请尽快关闭. 本文仅作为个人学习记录使用,也欢迎在许可协议范围内转载或分享,请尊重版权并且保留原文链接,谢谢您的理解合作. 如果您觉得本站对您能有帮助,您可以使用RSS方式订阅本站,感谢支持! 背景 最近开发一个功能需要获取音频文件的原始数据,需要支持大部分市面上的音频文件,于是找AI帮忙发现一个叫[libtag](https://taglib.org/)目前最新版本是2.1.1,这是一个C++的库,需要objc++混编. 经过一顿操作AI,最后得到了相关产物.a和相关头文件 以及一些常用的方法 示例 1 2 3 NSString *filePath = [[NSBundle mainBundle] pathForResource:@"迈腾进行曲_整曲" ofType:@"m4a"]; NSDictionary&amp;lt;NSString *, id&amp;gt; *metadata = [MTTagLibHelper readAudioTag:filePath]; [self printDic:metadata]; 如下 ... </summary> </entry> <entry><title>2025年终总结</title><link href="https://www.sunyazhou.com/2025/12/finalsummary/" rel="alternate" type="text/html" title="2025年终总结" /><published>2025-12-31T01:00:00+00:00</published> <updated>2026-04-05T02:19:21+00:00</updated> <id>https://www.sunyazhou.com/2025/12/finalsummary/</id> <content src="https://www.sunyazhou.com/2025/12/finalsummary/" /> <author> <name>孙亚洲</name> </author> <category term="生活纪实" /> <summary> 前言 本文具有强烈的个人感情色彩,如有观看不适,请尽快关闭. 本文仅作为个人学习记录使用,也欢迎在许可协议范围内转载或分享,请尊重版权并且保留原文链接,谢谢您的理解合作. 如果您觉得本站对您能有帮助,您可以使用RSS方式订阅本站,感谢支持! 这一年是AI辅助编程的元年,也是AI引领时代浪潮的开始. 我尝试从几个这一年影响较大的主题出发,以自己这个”社会边角料”的视角贯穿式写一下2025,用以证明我肤浅的认知是否肤浅. 2025年回顾 AI时代之DeepSeek 社会边角料 持续学习 身法 台球 好物 最后我想表达的是: 今年92#汽油 降到 6.8元了.意味着我们的生活有回归好的迹象. AI时代之DeepSeek 今年春节时,DeepSeek真是一路火花带闪电的打响了国产AI争战世界的战斗,从被外部垄断到自研设计,最终打破ChatGPT的模型成本与之匹敌并作为国内的LLM平替,第一个开源大语言模型的厂商…每一个瞬间都是国人的骄傲. 从 deepseek 的 CEO 发表内容我GET到了两件事 1.被Follow是很有成... </summary> </entry> </feed>
