文字编辑&保存在IOS应用程序中

时间:2016-02-27 19:22:45

标签: ios swift rtf

我有一个UITextview通过调用rtf文件显示某些文本。 我想让用户编辑UITextView上的文本并保存他们在rtf文件中所做的更改。

有什么办法可以通过更改UITextView上的文字来改变rtf文件吗?

1 个答案:

答案 0 :(得分:2)

如果您想要解决问题的“按类型解决方案”:

  1. 使您的视图控制器符合UITextViewDelegate
  2. 将文本视图的delegate连接到视图控制器
  3. 将以下功能添加到视图控制器:
  4. // Path to your RTF file
    let url = NSBundle.mainBundle().URLForResource("my_document", withExtension: "rtf")!
    
    func textViewDidChange(textView: UITextView) {
        let data = try! textView.attributedText.dataFromRange(NSMakeRange(0, textView.attributedText.length), documentAttributes: [NSDocumentTypeDocumentAttribute: NSRTFTextDocumentType])
        data.writeToURL(url, atomically: true)
    }
    

    这将保存文件的每次击键。虽然不知道性能。我没有在真正的iPhone上测试过这个。如果设备太硬,可以考虑在保存之间设置一个时间延迟,或者NSTimer保存每个 n 秒。