【发布时间】:2014-07-22 15:30:43
【问题描述】:
在尝试为 iOS 8 开发 Today Extension 时,我发现了一个奇怪的问题。每次用户打开通知中心时,似乎都会重新创建我正在使用的视图控制器。这意味着没有数据保留,因此我无法知道扩展程序是否需要更新。
想要这样做的主要原因是我想保留小部件的高度(使用preferredContentSize)。问题是当视图加载时,这个值总是被重置,这导致小部件的大小跳跃。股票小部件是它应该如何工作的一个例子,他们显然已经解决了这个问题,所以必须有某种方法来保留不同“会话”之间的数据。我还可以从调试器中得知该进程继续运行,因此这只是 Apple 代码中的某些内容,强制重新创建 View Controller。
我的问题是,这是一个错误吗?还是基于我缺少的某些设置或某些属性?或者它可能只是它应该工作的方式?如果是这样,解决方法是什么?
【问题讨论】:
-
我也遇到了同样的问题,谁能帮帮我。单元格实际上被重新创建,而不仅仅是数据重新加载。
-
正如答案中所指出的,这似乎是他们的工作方式。我通过将数据保存到 NSUserDefaults 来解决它。
标签: ios iphone widget ios8 ios-app-extension