是否有一种从自身内部“重新创建” UIViewController
的方法。 Android SDK 11为活动添加了recreate()
方法。在研究该主题时,我发现此问题可用于UI恢复:UI Restoration
我不认为这确实是我想要的。
我的应用程序基本上是一个抽认卡应用程序,允许用户在完成卡片组时如果错过任何单词,则重试错过的单词。在Android中,这是一个简单的this.recreate()
,其中遗漏的单词存储在SharedPreferences
中,然后使用新的SharedPreferences
字段重新加载视图。我有这项工作的UserDefaults
方面。我不关注iOS是否可以重新创建视图。也许是先选出来再回来?
我发现了以下问题:stackoverflow link
但是我没有使用导航控制器。只是一个简单的UIViewController。
感谢阅读!
答案 0 :(得分:0)
我假设您希望视图控制器的属性及其视图都像以前一样。这样做没有“魔术子弹”。您只需要自己做。
现在,如果正确构造了视图控制器,则其属性将自动决定其接口。因此,通常的事情是保存属性值(例如在UserDefaults中),然后再从中恢复它们和接口。
还可以保留视图控制器,以便您以后可以直接再次使用它。毕竟,它只是一个普通的对象。这可能会有一点风险,因为视图控制器的视图占用大量内存,但是有很多方法可以减少其占用的内存量。