我需要像textkit swift这样的东西来在我的应用程序中实现一个文本编辑器。问题是所有的textkit代码样本和信息都在旧版本的swift中,swift 4不支持它,并且有100多个错误。有人知道为什么最近没有关于textkit的新消息吗?我想知道textkit是不是已经过时了?如果是,那么请告诉我现在它的位置是什么,具有像textkit这样的大多数功能,如果没有,并且它还没有过时,请给我一些新的信息。感谢任何人的帮助。
要了解更多信息,请查看textkit的这些小代码,
let scrollView:UIScrollView = UIScrollView.init(frame: CGRectZero)
let textStorage:NSTextStorage = NSTextStorage()
let layoutManger: NSLayoutManager = NSLayoutManager()
let fontArribuates = [NSFontAttributeName: UIFont.systemFontOfSize(16)]
var titleTextView: UITextView = UITextView(frame: CGRectZero)
var contentTextView: UITextView = UITextView(frame: CGRectZero)或者像这样
// MARK: Life Cycle
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
self.title = "Post"
self.edgesForExtendedLayout = UIRectEdge.None
// error is : 'None' is unavailable: use [] to construct an empty option set`
}'CGRectZero' is unavailable in Swift、'systemFontOfSize' has been renamed to 'systemFont(ofSize:)'或'None' is unavailable: use [] to construct an empty option set的错误如下所示
发布于 2018-02-08 03:12:13
TextKit并没有过时。
只需执行建议的更改或使用Xcode的代码迁移功能自动执行更改(Edit>Convert>To当前Swift语法)。
使用CGRect.zero而不是CGRectZero。使用systemFont(ofSize:)和[]代替UIRectEdge.None,而不使用systemFontOfSize(...)。
发布于 2018-02-08 03:11:52
我不认为TextKit已经被取代了,只是在更新的iOS/Swift版本中更新了一些语法。
例如,您的第一部分适用于我的游乐场,但有以下更改:
let scrollView:UIScrollView = UIScrollView.init(frame: CGRect.zero)
let textStorage:NSTextStorage = NSTextStorage()
let layoutManger: NSLayoutManager = NSLayoutManager()
let fontArribuates = [NSAttributedStringKey.font: UIFont.systemFont(ofSize: 16)]
var titleTextView: UITextView = UITextView(frame: CGRect.zero)
var contentTextView: UITextView = UITextView(frame: CGRect.zero)对于您的第二个示例,错误消息建议...
self.edgesForExtendedLayout = UIRectEdge([])...but这是一个很快的猜测。
https://stackoverflow.com/questions/48671125
复制相似问题