我知道之前有人问过这个问题,但是如何根据我在 iOS 5 中的界面方向支持不同的视图?
Apple 的一个示例显示了 PortraitViewController 和 LandscapeViewController。PortraitViewController 创建 LandscapeViewController 并为旋转通知注册自己。当它收到旋转通知时,它会根据当前界面方向推送或弹出 LandscapeViewController。
到现在为止还挺好。
但是我怎样才能保持两个控制器同步的数据呢?(它们显然显示相同的数据,因为它们在技术上对用户来说是相同的控制器,只是在横向和纵向视图中具有不同的视图)。两者都有一个“重新加载数据按钮”,可以重新加载他们的数据。当 LandscapeViewController 重新加载时,如何告诉 PortraitViewController 显示相同的数据,反之亦然?
另一个问题是内存警告。当界面处于横向模式并且我收到内存警告我的 PortraitViewController 被卸载时。现在,如果我为 LandscapeViewController 重新加载数据,PortraitViewController 就不能做同样的事情,因为它被卸载并且它的 Outlets 仍然设置为 nil。
我该如何解决所有这些问题?