- 博客(1552)
- 资源 (8)
- 收藏
- 关注
原创 苹果开发初学者指南:Xcode 如何为运行的 App 添加环境变量(Environmental Variable)
在本篇博文中,我们介绍了 Xcode 15 运行 SwiftUI 代码出现“has passed an invalid numeric value to CoreGraphics”警告这一现象,并根据提示向小伙伴们演示了如何在 Xcode 中为 App 添加运行时的环境变量。
2024-04-18 13:15:06 961 11
原创 SwiftUI 解决英雄(Hero)动画导致“图片墙”点击切换时卡顿唐突的问题
在本篇博文中,我们讨论了 SwiftUI 英雄动画(Hero Animation)在新旧动画快速切换过渡时可能导致的唐突和不和谐问题,并给出优雅简洁的解决之道。
2024-04-17 19:15:41 35
原创 SwiftUI 5.0(iOS 17.0)触摸反馈“震荡波”与触发器模式趣谈
在本篇博文中,我们介绍了 SwiftUI 5.0(iOS 17.0)中触觉反馈(Haptic)机制的实现,并由此抛砖引玉讨论了开发模式中的触发器模式,最后我们看到了实现自己心仪的触发器是多么的简单。
2024-04-17 14:30:36 1292 11
原创 Xcode 15.0 新 #Preview 预览让 SwiftUI 界面调试更加悠然自得
在本篇博文中,我们介绍了 Xcode 15+ 中新的 #Preview 预览机制,并讨论了如何利用 #Preview + @Observable 宏让 SwiftUI 界面调试更加“如虎添翼”。
2024-04-13 14:44:55 1531 24
原创 漫谈初学者处理 CoreData 数据之启示录
在本篇博文中,我们介绍了初学者在处理 CoreData 各种数据时一些有用的小启示,希望大家能够喜欢。
2024-04-10 10:32:34 608 14
原创 Swift 异步序列 AsyncStream 新“玩法”以及内存泄漏、死循环那些事儿(下)
在本篇博文中,我们通过实际代码中出现的例子介绍了 Swift 并发模型里使用异步序列可能出现的陷阱,并成功的让它们“全面瓦解”。
2024-04-09 16:42:53 1063 2
原创 Swift 异步序列 AsyncStream 新“玩法”以及内存泄漏、死循环那些事儿(上)
在本篇博文中,我们讨论了 Swift 5.5 新并发模型中用 AsyncStream 结构创建异步序列的新方法,并比较了它和之前旧的实现有哪些进步。
2024-04-09 14:07:19 1085 6
原创 SwiftUI 中无法对添加模糊(blur)效果视图截图的初步解决
在本篇博文中,我们介绍了在 SwiftUI 中无法对添加模糊(blur)效果视图截图问题的一些解决方法,并讨论了目前这些方法的一些不足之处。
2024-04-05 13:52:51 758 14
原创 早起的“鸟儿”有虫吃:如何在 App 运行的极早期执行代码?
在本篇博文中,我们讨论了在 App 运行早期抢先执行代码的几种方式,并按照实力将它们依次排序。
2024-04-02 09:41:07 172 13
原创 Swift 从获取所有 NSObject 对象聊起:ObjC、汇编语言以及底层方法调用链(五)
在本篇博文中,我们一起讨论了实际上如何用 ARM64(AArch64)汇编代码“洒脱”的更改底层方法调用链、如何混合汇编和 ObjC 代码一起协同完成任务以及另一种避免 x0 寄存器被覆写的方法。
2024-04-01 13:33:27 980 1
原创 Swift 从获取所有 NSObject 对象聊起:ObjC、汇编语言以及底层方法调用链(四)
在本篇博文中,我们介绍了什么是方法调用链,并详细讨论了通过 Hack 技术动态更改调用链实现指令流“随心所欲”的基本思路。
2024-03-24 21:49:25 1329 8
原创 Swift 从获取所有 NSObject 对象聊起:ObjC、汇编语言以及底层方法调用链(三)
在本篇博文中,我们讨论了如何手动撸码实现 SwiftHook 类似的 NSObject.init 构造器钩子功能;我们还尝试摆脱了 Hook 闭包功能中编译器生成的 ARC “桎梏”代码。
2024-03-24 16:21:48 1117 1
原创 Swift 从获取所有 NSObject 对象聊起:ObjC、汇编语言以及底层方法调用链(二)
在本篇博文中,我们先是介绍了如何使用 SwiftHook 库来完成 SWIZZ 的钩子功能,随后讨论了为什么 print 方法打印对象信息时会导致运行崩溃,以及如何巧妙的解决它。
2024-03-21 14:37:41 1221 19
原创 Swift 从获取所有 NSObject 对象聊起:ObjC、汇编语言以及底层方法调用链(一)
在本篇博文中,我们讨论了为什么要在 App 运行时“捕获”所有 NSObject 对象的实例、介绍了 NSObject 默认构造器方法里都做了神马事情,以及初步探讨了实现这一目的的基本原理。
2024-03-20 22:20:26 1314 15
原创 Swift 结构化并发之全局 Actor 趣谈
在本篇博文中,我们介绍了 Swift 结构化并发模型中全局 Actor 这一有趣话题,我们随后讨论了它与一般 Actor 的不同之处,以及全局 Actor 的应用场景。
2024-03-20 16:44:54 939 12
原创 Swift 入门学习:集合(Collection)类型趣谈-下
在本篇博文中,我们接上篇继续介绍了 Swift 语言中集合类型 Set,并讨论了如何用 Range 类型来表示无穷多元素的集合;我们还介绍了苹果官方 Swift Collections 框架中更多的集合类型,超赞的哦。
2024-03-09 21:51:37 1380 13
原创 Swift 入门学习:集合(Collection)类型趣谈-上
在上篇的学习中,我们讨论了 Swift 中集合背后的 Collection 协议,并随后介绍了数组(Array)和字典(Dictionary)两种集合类型。
2024-03-09 21:39:42 1370 6
原创 SwiftUI 在 App 中弹出全局消息横幅(下)
在本篇博文中,我们先是利用共享状态作为新旧 Windows 间的沟通桥梁,接着派生出新的 UIWindow 类返回对全局视图交互事件负责的 UIView,最后我们利用 Preference 机制完美的获取到了全局消息横幅的位置和尺寸从而圆满了整个实现。
2024-03-04 22:06:52 254 9
原创 SwiftUI 在 App 中弹出全局消息横幅(上)
在本篇博文中,我们先是讨论了弹出传统消息横幅的不和谐之处,并随即介绍了什么是全局消息横幅,最后提出了实现全局消息横幅的“双生” Windows 机制。
2024-03-04 21:57:02 201
原创 SwiftUI 如何在运行时从底层动态获取任何 NSObject 对象实例
在本篇博文中,我们讨论了在 SwiftUI 中监控一般 NSObject 对象的原理,并深入底层,使用钩子(Hook)和 Swizz 机制来达到近乎随心所欲的超能力!小伙伴们还不赶紧操练起来哈!
2024-03-04 14:18:16 381 14
原创 SwiftUI 支持拖放功能的集合视图(Grid)如何捕获手指按下并抬起这一操作
在本篇博文中,我们讨论了 SwiftUI 如何在应用拖放(Drag&Drop)功能的同时,监听捕获到用户手指按下并抬起这一操作,该实现可以通过简单地扩展支持更多的应用场景。
2024-02-24 10:07:13 177 9
原创 UIKit 在 UICollectionView 拖动时动态更改 Cell 外观的原理和实现
在本篇博文中,我们讨论了如何发挥 UIKit 比 SwiftUI 更底层,更全面的优势去实现 UICollectionView 拖动时更改 Cell 外观的功能;我们还利用 iOS 16+ 新推出的机制将 SwiftUI 视图和 UIKit Cell 巧妙的融合在一起,充分发挥了它们各自的长处!
2024-02-23 14:25:08 88 1
原创 SwiftUI 集合视图(Grid)拖放交换 Cell 的极简实现
在本篇博文中,我们讨论了在 SwiftUI 中如何为集合视图(Grid)添加拖放交换其 Cell 的功能,小伙伴们可以从代码中真正体会到 SwiftUI 的简洁之美!
2024-02-22 20:49:12 1180 15
原创 UIKit 在 UICollectionView 中拖放交换 Cell 视图的极简实现
在本篇博文中,我们讨论了 UIKit 中 UICollectionView 视图拖放操作的基本原理,并用最简单的代码实现了 UICollectionView 视图中 Cell 的交换功能。
2024-02-22 16:07:24 1158 5
原创 SwiftUI 更自然地向自定义视图传递参数的“另类”方式
在本篇博文中,我们讨论了 SwiftUI “传统”的视图接口定义在具有海量传入参数时的一些不便之处,并且用更加“低耦合”的“环保”方法改善了这一情况。相信现在小伙伴们对于 SwiftUI 中视图的构建会有更写意、更灵活的方式啦!
2024-02-20 17:02:57 1246 19
原创 Swift 5.9 新 @Observable 对象在 SwiftUI 使用中的陷阱与解决
在本篇博文中,我们讨论了在 SwiftUI 中融合 Swift 5.9 新 @Observable 对象的几种方式,并比较了它们细微差别下的潜在陷阱,最后提供了非常简单的解决之道。
2024-02-18 15:08:08 1209 17
原创 Swift 隐藏宝藏:“逆天改命”调整方法重载(function overloading)优先级
在本篇博文中,我们先是介绍了 Swift 语言中当方法的多个重载同时满足调用语义时编译器的选择之道,并且随后进一步讨论了如何“逆天改命”修改这一默认的选择法则。
2024-02-05 14:12:54 1001 13
原创 Swift 入门之自定义类型的模式匹配(Pattern Matching)
在本篇博文中,我们讨论了在 Swift 中如何优雅的适配模式匹配,并介绍了如何使用模式匹配操作符重载机制在 switch 语境中让开发“简约而简单”。
2024-02-03 11:01:57 1451 11
原创 SwiftUI 动画入门之二:几何特效动画(GeometryEffect)
在本篇博文中,我们接着前篇博文进一步讨论了如何利用 SwiftUI 几何特效动画(GeometryEffect),在任意路径上加上任意样式如影随形、丝般顺滑的“小尾巴”,小伙伴们值得拥有哦!
2024-02-01 21:38:56 240 5
原创 SwiftUI 动画入门之一:路径动画(Path Animations)
在本篇博文中,我们讨论了 SwiftUI 中如何利用路径动画(Path Animations)让原本“刻板”的折线图灵动的跃然于屏幕之上。在下篇博文中,我们将接着介绍 SwiftUI 中另一种自定义动画机制 GeometryEffect 的实现,不见不散!
2024-02-01 18:32:36 188 6
原创 SwiftUI 打造酷炫流光边框 + 微光滑动闪烁的 3D 透视滚动卡片墙
在本篇博文中,我们讨论了如何实现一款酷炫边框流光 + 背景微光滑闪的卡片3D 透视滚动效果。
2024-01-24 18:38:51 533 9
原创 SwiftUI 纯手工打造 100% 可定制的导航栏
在本篇博文中,我们讨论了如何借助秃头码农们天马行空的想象力,在 SwiftUI 中纯手工恣意创建任何奇妙样式的定制导航栏。
2024-01-22 10:03:12 183 9
原创 SwiftUI 为任意视图加上徽章(Badge)而想到的(下)
在本篇博文中,我们讨论了 SwiftUI 中另一种获取视图尺寸的便捷方法,并将它和 ZStack 融合在一起,共同打造了徽章的新实现!并且新的实现还经受住了从右至左语言排版和动态字体的“严峻”考验,棒棒哒!
2024-01-12 20:33:15 346 6
原创 SwiftUI 为任意视图加上徽章(Badge)而想到的(上)
在本篇博文中,我们讨论了使用动态获取和修改视图尺寸的技术为 SwiftUI 中任意视图打造“弹性”大小的徽章,这样不论徽章中的数字如何变化都可以万无一失,棒棒哒!
2024-01-12 18:13:27 190 11
原创 SwiftUI 打造一款收缩自如的 HStack(四):Layout 自定义布局
在本篇博文中,我们讨论了在 SwiftUI 中打造一款收缩自如“HStack”的最终实现。我们使用自定义 Layout 布局“恰如其分”的实现了 CollapsedLayout 布局容器从而圆满的完成了任务,棒棒哒!
2024-01-08 15:15:43 1072 12
原创 SwiftUI 打造一款收缩自如的 HStack(三):“魔镜魔镜,我爱你”
在本篇博文中,我们讨论了如何使用“魔镜”般的黑魔法神奇的摆脱可收缩“HStack“实现中多余的“赘肉”,最后我们不禁哼出“解放区的天是明朗的天,解放区的秃头码农好喜欢”的曲调,棒棒哒!
2024-01-05 13:14:11 907 8
原创 SwiftUI 打造一款收缩自如的 HStack(二):对齐+ZStack
在本篇博文中,我们在 SwiftUI 中用对齐机制和 ZStack 共同打造了一款可收缩的“HStack”。不同于之前“纯” HStack 的实现,用对齐可以全面把控容器内子视图的偏移做到随心所欲,小伙伴们值得拥有!
2024-01-04 21:47:39 1209 3
原创 SwiftUI 打造一款收缩自如的 HStack(一):“原汤化原食”
在本篇博文中,我们讨论了如何用 HStack 自身来打造一款可收缩的“HStack”,虽然读起来像一段绕口令但所幸我们最后成功的得偿所愿了。相信看完本篇后小伙伴们都会受益匪浅。
2024-01-04 16:43:01 996 7
原创 『番外篇十』SwiftUI 实战:打造一款“五脏俱全”的网络图片显示 App(下)
在本篇博文中,我们继续完善和消除了之前 PhotoGeter 应用的少许瑕疵。现在我们的 App 逻辑上更加简洁,对错误的处理也更加应对自如,完全做好了“荒野求生”的基本准备,棒棒哒!
2024-01-01 21:38:19 1027 3
原创 『番外篇九』SwiftUI 实战:打造一款“五脏俱全”的网络图片显示 App(上)
在本篇博文中,我们讨论了如何初步打造一款“五脏俱全”的网络图片显示 App。我们创建了数据模型,并将界面“化整为零”分割成各个独立的组件,最后我们将它们通通整合到一起:一款小巧的网络图片查看器就此应运而生啦。
2024-01-01 21:17:52 1014
SwiftUI 超酷炫动画示例大合集
2024-01-08
MacOS 和 iOS 内核 xnu 可编译源代码
2024-01-08
SwiftUI 示例 iFonts 应用完整项目源代码
2024-01-08
SwiftUI 各种界面、自定义视图、动画以及设计哲学示例合集
2024-01-08
SwiftUI 英雄动画(HeroAnimations)演示代码
2024-01-08
iOS 15.4 真机调试支持包(可支持最新的iOS 15.4.1系统)
2022-04-03
SwiftUI编程实现不同TabView标签页中任意导航层级视图之间相互跳转的演示代码
2022-04-03
unlocker_new
2008-11-10
UnlockerEx
2008-04-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人