iOS中是否有可以重新加载当前视图的方法?

iOS中是否有可以重新加载当前视图的方法?,ios,view,refresh,reload,Ios,View,Refresh,Reload,我的问题是: 我想发表一些评论。当视图第一次显示时,每个子视图都会根据注释数或其他条件调整其位置或隐藏状态 此外,用户可以在同一视图中发布评论,因此在提交评论后,每个子视图都应该根据新评论的总数调整其位置或状态 我可以配置所有需要在post连接后更改位置的子视图。但是这需要做很多工作,而且很容易出错 但是,如果我可以让视图自己重新加载它(或多或少类似于callviewwillbeen和viewDidLoad,但是重置每个视图),并且只运行viewDidLoad中的方法,那么刷新注释就会容易得多

我的问题是:

我想发表一些评论。当视图第一次显示时,每个子视图都会根据注释数或其他条件调整其位置或隐藏状态

此外,用户可以在同一视图中发布评论,因此在提交评论后,每个子视图都应该根据新评论的总数调整其位置或状态

我可以配置所有需要在post连接后更改位置的子视图。但是这需要做很多工作,而且很容易出错

但是,如果我可以让视图自己重新加载它(或多或少类似于call
viewwillbeen
viewDidLoad
,但是重置每个视图),并且只运行
viewDidLoad
中的方法,那么刷新注释就会容易得多

所以我不知道是否有一种方法可以将所有子视图重置为原点位置。 我尝试了
[self-setNeedsLayout]
[self-setNeedsDisplay]
方法,但不起作用

IOS中是否有可以重新加载当前视图的方法


现在有一种方法可以自动“重新加载”视图,更新子视图中的数据。您可以通过手动(通过IBOutlets)为所有子视图指定新值来更新它们,并通过它们的标记来区分子视图,但这并不是很好的做法

创建带有注释的视图的更好方法是使用基于
UITableView
的自定义视图,单个单元格表示注释


例如,检查在此类中是如何完成的-

setNeedsLayout在重写自定义图形的drawrect方法时使用。setNeedsLayout应该已经工作了。。你能发布你的代码吗?这是一个正确的答案,但是用标签区分子视图是一个糟糕的设计。写起来更简单,但要记住却更难。标签不应该添加到视图中。@您有一个tableview单元格,上面有5个子视图。例如,您需要更新100个单元格,每个单元格有5个子视图。如果不为这5个子视图使用标记,如何执行此操作?自定义单元格将子视图视为属性。要访问单元格,您只需获得
visibleCells
。更妙的是,该单元可以有一种方法来接收新数据并在内部更新其内容。因为就我现在所了解的,对单元格的子视图使用属性是一种糟糕的设计。我们可能不太了解自己。简化-使用标签几乎每次都是糟糕的设计。我只记得一个有意义的用例。