如何重新加载 UIView

Posted

技术标签:

【中文标题】如何重新加载 UIView【英文标题】:How to reload UIView 【发布时间】:2011-11-18 22:33:09 【问题描述】:

我有一个具有多个视图的应用程序。 View1 显示有一个表格视图,其中包含来自 plist 的所有条目的列表。 View2 是一个允许添加新条目的视图。当在 View2 中添加新条目时,更新 plist 并将 View2 从 superview 中删除(View2 最初是作为 View1 顶部的子视图添加的)。我想要做的是在 View2 弹出之前重新加载 View1 中的表,以便可以看到更新后的表。有谁知道怎么做?

【问题讨论】:

这一切都是在 1 个视图控制器中完成的吗? 没有两个视图控制器 【参考方案1】:

在您的第二个视图控制器中:

-(void)viewWillDissappear 
  [super viewWillDissappear];
  [[self.previousViewController tableView] reloadData];

【讨论】:

【参考方案2】:

您可以将 View1 中的 tableView 设置代码移动到

-(void)viewWillAppear:(BOOL)animated

这样,当您关闭/弹出 View2 时, View1 将为您重新加载数据。 确保您实际上正在关闭 view2 你的术语让我有点困惑,特别是

View2 已从父视图中移除。

这就是为什么我想澄清一下,您需要关闭/弹出 View2 以便 View1 获得焦点并调用 -(void)viewWillAppear:(BOOL)animated

【讨论】:

以上是关于如何重新加载 UIView的主要内容,如果未能解决你的问题,请参考以下文章

加载/重新加载 xib uiview

在 UIView 中重新加载 UITableView

如何在 UIView swift 中重新加载特定的子视图?

从 iOS 中的 UIView 子视图重新加载时 UITableView 未重新加载

为啥我的 UIView 在重新加载后没有响应?

在 UIView 中重新加载 JSON 提要