0

我有一个使用 tabBarController 的 iOS 应用程序。每个选项卡根视图都是一个导航控制器。在其中一个选项卡中,我使用导航栏上的按钮将我推送到包含 UITextView 的 UIViewController。

我正在努力解决的问题是,当按下导航栏上的后退按钮时,添加到 UITextView 的任何内容都会丢失。我发现了一些类似的问题,它们都有截然不同的解决方案。我不知道如何从这里开始。

明确我想做什么。用户可以在 UITextView 中输入一些文本并导航回第一个视图而不会丢失它。当他们选择返回第二个视图时,文本应该在 UITextView 中。

建议使用委托类string保留文本的两个导航视图之间的 UITextView 内容处理。我在这里很担心,因为我不确定它是否会保持用户可能的段落格式。

我已经在整个应用程序中使用核心数据,因此我可以轻松地创建一个属性来存储它。我只是不确定合适/最好/最简单的方法是什么。

完成我想做的事情的最佳方法是什么?我对此有点陌生,所以片段真的很有帮助!

更新更多相关信息

UITextView 中的文本最终会发布到服务器。我只需要保留该文本,直到他们发布为止。该应用程序具有登录名,因此他们总是有可能注销并再次登录,甚至是其他人。如果我理解正确,这将导致创建一个新的 managedObjectContext,从而清除我为个人以及 NSUserDefaults 存储的所有核心数据。有没有办法通过我上面描述的过程来存储文本?

4

1 回答 1

0

您描述的文本仅在一个视图控制器中使用,无需将其传递回另一个视图控制器。

因此,您可以从文本视图中获取属性字符串(当编辑会话完成或视图从屏幕上移除时)。它符合,NSCoding因此您可以将其转换为数据并将该数据保存到磁盘/数据库。

稍后,当视图重新显示时,您可以从磁盘加载数据并重新创建显示文本。

于 2013-07-19T22:49:40.990 回答