Edhita:面向开发者的开源 iOS SwiftUI 文本编辑器
探索 Edhita,这款完全开源的 iOS 文本编辑器采用 SwiftUI 构建。了解其核心功能、如何集成 AdMob 及隐私政策,以及为何它是 Swift 开发者的理想起点。文章介绍了从设置仓库、在 Xcode 中构建应用,到为个人使用自定义编辑器的全过程。无论你是经验丰富的 iOS 工程师还是刚起步,了解 Edhita 的现代代码库、干净 UI 与活跃社区如何提升你的学习曲线并赋能你自己的编辑器项目。
什么是 Edhita?
Edhita 是一款 完全开源 的文本编辑器,专为使用 SwiftUI 构建的 iOS 设备设计。该项目托管在 GitHub 上的 tnantoka/edhita,并在 MIT 许可证下发布,意味着可用于个人及商业用途。
这对开发者为何重要
- 现代 UI – SwiftUI 提供声明式、可重用的界面,感知 iOS 原生体验。
- 清晰架构 – 代码库分布于独立模块(Models、Views、Controllers),非常适合学习模块化 Swift 设计。
- AdMob 与隐私 – 应用已集成 AdMob(符合隐私政策),便于你了解如何在 SwiftUI 项目中嵌入第三方服务。
- 跨平台启发 – Android 对等项目 DotText 显示跨技术分享的可能性,是博客讨论的佳选。
快速入门指南
- 克隆仓库
git clone https://github.com/tnantoka/edhita.git cd edhita - 打开项目 – 在 Xcode 中双击
Edhita.xcodeproj,或在终端执行open Edhita.xcodeproj。 - 构建并运行 – 选择一个 iOS 模拟器(iPhone 15 Pro、iPhone SE 等)并点击 Run。编辑器即可启动进行测试。
- 修改常量 – 像
Constants.swift之类的文件包含 AdMob ID 与 UI 布局值的配置。你可以随意自定义路径、主题色或标题。 - 为 App Store 打包 – 使用 Xcode 的归档流程,然后通过 App Store Connect 提交。
如果你不熟悉 SwiftUI 的 @State 与 @Binding,源码中已提供大量 inline 注释。这是学习 SwiftUI 如何处理动态文本、文件操作和分享的极佳实践。
核心功能亮点
| Feature | Description |
|---|---|
| 富文本编辑 | 支持纯文本输入、换行识别以及通过键盘快捷键实现基本格式化。 |
| 文件 I/O | 打开、保存、覆盖和导出任意格式文档;应用底层使用 FileManager。 |
| 分享 | 点击分享按钮时会弹出分享表单,在 iPhone 与 iPad 都可使用。 |
| AdMob | 应用上线后会显示 AdMob。隐私政策合规已内置,可在 Constants.swift 中切换。 |
| 本地化 | 使用可本地化字符串文件(日语与英语),使编辑器可无语言限制使用。 |
扩展项目
由于 Edhita 是开源的,你可以通过几个步骤添加功能:
- 创建功能分支 – 将更改保持隔离。
- 添加新的 Swift 模块 – 例如 Markdown 解析器或语法高亮器。
- 发布更新 – 如计划在 App Store 上分发,请遵循 Apple 对新框架的审核指南。
- 提交 Pull Request – Edhita 维护者活跃且欢迎贡献。
社区与支持
该仓库拥有 1.4k 星标和 249 次 Fork,表明有相当活跃的开发者基础。你可以:
- 在 Issues 选项卡提问。
- 查看现有问题以获取错误报告或功能请求。
- 浏览代码,拉取自己的更改并提交 Pull Request。
结论
Edhita 以其简洁、结构良好的完整 iOS 编辑器示例脱颖而出。它是 SwiftUI 爱好者探索文本处理、文件系统集成与广告的理想“起步套件”。其开源属性鼓励协作,成为可随用户基数共同成长的社区驱动项目。
无论你是想做贡献、将其用作新应用模板,还是仅仅学习健壮的 SwiftUI 架构,Edhita 都值得你在 GitHub 关注列表中占有一席之地。