扬庆の博客

扬庆の博客

寒江孤影,江湖故人。

SwiftUI-打开书本效果的书本视图封装
SwiftUI - 封装打开书本效果的书本视图?目标 外部可传递一个配置信息(例如: 书本宽高, 书本圆角, 书本阴影, 书本打开进度, 书本翻页分割线颜色 ) 外部自定义封面、打开内部(左侧、右侧) 打开效果(动画 平滑) 实现预期效果 主逻辑代码 外部如何使用的? 其他信息封装提供给外部的接口 配置信息如下 有哪些新东西? Animatable协议在SwiftUI中,An...
SwiftUI-TagsView布局Layout
SwiftUI-TagsView布局Layout Layout在SwiftUI中,Layout协议不是公共API的一部分,而是用于内部实现的。它用于定义如何布局视图的实际算法。开发者通常不会直接与Layout协议进行交互,而是通过使用SwiftUI提供的布局系统来实现自定义布局。 SwiftUI的布局系统是基于声明式的,它使用View协议来定义视图的外观和行为,而不是直接控制布局算法。在开...
SwiftUI-LimitedTextField
SwiftUI - 封装一个字数限制 TextField 控件?效果展示 代码外部使用 封装控件代码 UI 相关是否自动撑开? 这里使用 autoResize = false , 就是给定一个最大高度, 内部点击任何区域都弹出键盘。 autoResize = true, 意味着根据输入的内容自动撑开。 frame 的 height 设置为 0。 进度显示 非 UI封装相关配置...
SwiftUI - 交互式侧边栏
SwiftUI -交互式侧边栏Interactive Side Menu 效果 UI 设计 SideMenu 部分 Tab 枚举配置 1234567891011121314151617enum Tab: String, CaseIterable { case home = "house.fill" case bookmark = "book...
SwiftUI - 网络获取json并分页展示
SwiftUI之网络获取json并分页展示效果 第三方库SDWebImage 地址: https://github.com/SDWebImage/SDWebImageSwiftUI?tab=readme-ov-file Xcode 通过 package集成 使用方式可查看 GitHub 文档。 (分页)获取图片列表 json data 加载首页 加载更多 加载指示器 图片加载 所需参数...
SwiftUI-YouTube-miniPlaye
SwiftUI- 模仿 YouTube 之 miniPlayer+手势YouTube Mini Player Kavsoft 视频地址: https://www.youtube.com/watch?v=DtYDH4woWiY&t=56s 比较复杂的 SwiftUI 动画 搭建Home页面框架 ZStack TabView TabItem 1 修饰符 扩展 View , s...
HoldDownButton
SwiftUI - HoldDownButton 制作YouTube 地址 样张如下 搭建 UI 封装所需属性 定时器 定时器的作用: 就是用来动画的形式制作进度条 定时器使用 拿到 timerCounter 就能在 UI 部分设置width , 运行即可看到效果 这里用到.onReceive 修饰符, 内部通过订阅timer消息,就可以间隔 0.01 拿到一次更新 , 就可以计算 p...
Mac 制作Gif图
Mac如何制作Gif图? (免费🆓)前言参考博文 所需一台Mac 自带 QuickTime Player 来录制 Gifify 工具实现自己录制制作 gif 动态图 具体实现QUickTime Player 录制视频 ⏺️ 依次点击, 文件 - 新建录制屏幕 点击录制所选部分, 框选所需要录制的区域 依次点击选项 – 桌面 – 录制(即可)。 Gifify 工具mov 转...
SwiftUI-ReelsLayout 抖音
SwiftUI -ReelsLayout AppYouTube Link address: 效果图类似于tiktok 播放页面, 滑动切换 AVKit UIViewControllerRepresentable makeUIViewController updateUIViewController OffsetKey: PreferenceKey .preferenc...
SwiftUI-Wheel Picker
Wheel PickerYouTube Tutorial Link: UI 架构 Divider() 就是每个竖杆 当刻度达到每个 steps 间隔 使用 overlay 显示刻度信息 并调整 divider 高度 overlay 一个中间竖杆 修饰符.safeAreaPadding 从中间开始移动 size.width / 2 搭建刻度视图 配置刻度相关信息 显示刻度值...
avatar
扬庆
Have a nice day 📚