RichEditorViewSwift 0.0.4

RichEditorViewSwift 0.0.4

Soltan Gheorghe 维护。



  • cyber-gh

RichEditorView

这是使用 WKWebView 的 Swift 5 版本,它基于 cjwirth/RichEditorView 并添加了一些强大的功能。

目录

  • 使用说明
  • 新增功能
  • 待办事项
  • 额外说明
  • 致谢和许可证

使用说明

您只能通过 Cocoapods 导入它

pod "RichEditorViewSwift"
import RichEditorViewSwift

此处不包括单元测试。您可以在 cjwirth/RichEditorView 中找到它。


新增功能

大多数功能与 父仓库 中的一样,但我添加了一些其他功能和一些示例中的指示。其他功能可以在 cjwirth 的仓库中找到。

  • 复选框
  • 离线与基于服务器图像和视频功能
  • 表格(具有编辑功能的 编辑功能

以下编辑功能假设您有一个属性 let editorView = RichEditorView()

  1. 您可以通过调用 editorView.getSelectedText 获取选中文本文本
  2. RichEditorView 中的 runJS 和其他功能在执行上与 cjwirth 的不完全一样。这是由于 WKWebView 的 JavaScript 桥接;与 WK 相比,UIWebView 返回一个字符串。为了运行 JavaScript 和其他功能并返回 Void,您必须做以下操作
editorView.getSelectedText() { r in
    // r is just a variable.
}

或者

editorView.runJS("document.getElementById('editor')") { r in 
    print(r)
}

注意:这些操作可能并发执行。这可能是由于WKWebView的内存效率特性。但我不完全确定这是否属实,这只是我的观察。 这是因为它的函数是:public func getSelectedText(handler: @escaping (String) -> Void)。注意 (String) -> Void。变量 r 是JavaScript返回的字符串值。

  1. 插入链接的功能也发生了变化。HTML中的正常标签布局如下:<a href="https://github.com/" title="GitHub">用户看到的文本</a>。当你插入一个链接时,需要以下参数:href和文本。如果存在范围选择,将清除范围选择中的文本!
  2. 暗黑模式通过CSS和HTML文件实现。

待办事项

  • 如果您的框架未设置为视图控制器视图的宽度,可能会存在某些问题。建议使用additionalSafeAreaInsets CSS在用户最初点击编辑器视图时会扩展的问题
  • 找到维护Pod和Carthage包的人
  • 分别创建iOS 12.X和iOS >13.X的包
  • 重构iOS 12.X的库栏

致谢与许可

许可协议为BSD-3条款

cjwirth - iOS-RichEditorView原作者

C. Bess - WKWebView支持

从YoomamaFTW分叉而来