我正在开发一个 iPhone 应用程序,我有一个 UIViewController
类,其中有一些 coverflow 动画,根据设计,我的 View 顶部有大约 5 个按钮,每个按钮都有一个 IBAction
单击按钮的方法我需要显示具有不同数据的不同 coverflow 集,并且 coverflow 的计数也从 1 个按钮操作更改为另一个。我的问题是如何在单击这些按钮时刷新我的页面(重新加载),因为我知道显式调用 viewDidLoad
是一个非常糟糕的主意,那么我该如何实现呢?提前感谢任何帮助。
最佳答案
让 View 重新绘制自身的最简单方法是调用 [UIView setNeedsDisplay] 或使用 [UIView setNeedsDisplayInRect]。此方法告诉 View 它需要重新绘制自身及其 subview 。但是,您不必总是调用它。还有其他方法可以导致 View 重绘自己。例如,如果您使用 [UIView addSubview:] 或 [UIView removeFromSuperview] 在 View 层次结构中添加或删除 View 。
这些方法会导致系统调用 View 的 drawInRect: 方法(假设您使用自定义绘图代码覆盖它)。如果您没有为自定义绘图覆盖此方法,那么它应该会导致您的 subview 收到相同的消息,以便它们有机会重绘。
这里有更多信息。专门阅读标有“ View 绘制周期”的部分。
关于iphone - 如何在单击某些按钮时重新加载我的 UIViewController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7725215/