应用程序显示有关行星、它们的卫星等的信息。它显示行星列表,让用户选择一个行星并查看其详细信息,然后将其加入书签/取消书签。我有一个向用户显示所选行星详细信息的视图,它还包含一个添加/删除书签按钮。如果用户单击该按钮,则添加/删除该书签,并将另一个视图推送到当前视图之上,以告诉用户该书签已被删除。
现在的问题是,当用户单击状态视图上显示的导航栏左侧的后退/行星详细信息按钮并返回行星详细信息视图时,仍会显示添加/删除(以之前显示的为准)按钮,而它现在应该根据我编写的代码删除/添加(根据先前加载的按钮)。
我能理解的是,当用户单击该后退按钮时,不会重新加载前一个视图,只会弹出状态视图。有没有一种方法可以让应用程序运行 setNeedsDisplay 或当用户单击状态视图上的后退按钮时可以重新加载书签详细信息 viewDidLoad 代码的方法?
还是有其他可能的解决方案?
这让用户非常困惑,因为他认为他刚刚删除/添加了书签,但按钮仍在要求他添加/删除......
代码的其他部分也使用该状态视图向用户显示操作的结果,因此我无法更改其代码,或者我可以检查其中的前一个视图,检查它是否是行星详细信息,然后重新加载其内容...