我希望在我的应用中实施联系人列表。我有添加联系人工作,它主动使用NSCoding写入联系人的磁盘。它将在联系人列表和新联系人视图之间正确更新,但是当我从另一个视图切换时不会更新。
以准备数据的方式来自非联系人视图时,是否需要prepareforsegue
?或者我是否需要在第一个视图中创建Set<Contacts>
并在视图之间传递引用。截至目前,它仅在我从添加联系人视图控制器执行unwindsegue
时更新数据。
答案 0 :(得分:0)
我需要更多的上下文(代码)以确保这将解决您的情况。
但过去我有类似的问题,原因很简单:
我将刷新代码放在ViewDidLoad()
中。只有在加载ViewController时(第一次出现)才会调用此方法,而不是每次切换回它时(不重新加载)。
如果您希望每次“切换”回视图时执行代码,就应该将代码放在ViewDidAppear()
或ViewWillAppear()
中。
这是你的代码:
ViewDidAppear(){
some code
some code
code that refreshes view with contacts
}
这应该是:
ViewDidLoad() {
some code
some code
}
ViewDidAppear() {
code that refreshes view with contacts
}
每次视图出现在屏幕上时要执行的代码都应放在“ViewDidAppear()
”中。