如何解决uinavigationcontroller弹出时更新先前的视图
| 我有一个UINavigationController,我从Level1转到Level2,在这里我选择了一个行/项目;然后我使用“后退”按钮-但是-在我的级别1中,我正在显示默认选择(我通过转到“级别2”并选择其他内容进行了更改)-而我的级别1完全没有变化,所以我猜想viewDidLoad不会再次调用...如何强制重新加载? 非常感谢 干杯 吉比 编辑1: 我知道您是对的,但是它不起作用-我在问自己是否与可重复使用的电池有关,因此它不会重新加载...这可能吗?任何更多的想法 编辑2: 实际上,它不起作用意味着我将所有代码(实际上是将它移动了)从didLoad复制到viewWillAppear-这是正确的做法吗? 还是应该尝试在正确的地方更新我的nsmutablearray? 谢谢。干杯 编辑3:实际上,尽管在重新显示时调用了viewWillAppear,但是在我的代码中添加了一些标志/消息来了解发生了什么,但是可见单元格不是“重新绘制/刷新”的。这样,如果我向下滚动然后向上滚动,神奇的是这些更改正在起作用并出现,但我希望这种情况从一开始就发生。任何想法请帮忙。谢谢解决方法
-viewDidLoad
在UIViewController的生存期内仅被调用一次。在请求视图控制器的视图之后立即调用它,例如通过访问其“ 1”属性。因此,在您的情况下,您要将重装代码放在-viewWillAppear:
中。每次显示视图控制器的视图时都会调用此方法。
, 您可以将更新代码放入控制器的-viewWillAppear:
方法
, 但是-viewWillAppear在ios 4.3中没有调用,它确实在ios 5.0及更高版本中被调用
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。