3

谁能告诉我如何重新加载视图。在我的程序中,它包含一个选项卡视图控制器。选项卡中有一个名为“A”的项目。这个“A”项目指向一个视图控制器。在那个视图控制器中,它正在显示一些数据,我在其中包含了 UIActionSheet。操作表中有一个按钮-删除。此删除按钮用于删除特定数据。现在我的问题是我需要重新加载该视图,以便不显示这些已删除的数据。所以请任何人告诉我如何重新加载页面。我之前已经包含了以下代码

[self presentModalViewController:historyView animated:YES];
[historyView setNeedsDisplay];

但它显示了一些错误:-

 No visible @interface for viewcontroller declares the selector 'setNeedsDisplay'

请告诉我解决方案.. :(

4

1 回答 1

6

UIViewController类没有方法setNeedsDisplay。UIView类确实有这个方法。所以你可以这样写:

[historyView.view setNeedsDisplay];

但是此方法不会重新加载视图。它只是将接收器的整个边界矩形标记为需要重绘(来自苹果文档iOS Developer Library)。因此,drawRect方法将被调用。

为了解决您的问题,您可以在视图控制器中创建自己的函数,如initializeUI,然后在视图最初加载时调用它(在viewDidLoad方法中),例如在需要更新视图时删除数据后调用它。

于 2012-09-13T13:03:08.257 回答