Objective c UItableView在第二次加载视图后不会刷新数据

Objective c UItableView在第二次加载视图后不会刷新数据,objective-c,xcode,uitableview,viewdidload,Objective C,Xcode,Uitableview,Viewdidload,我有点看不清楚。在我第一次打开它时,它可以完美地加载,但是在第二次尝试之后,它没有进入viewDidLoad方法,这导致数据不能在我的tableview上刷新。我还正确地发布了dealloc方法。有什么想法吗?我已经通过谷歌搜索过了,但没有得到任何有用的东西。非常感谢你能为我提供的一切帮助 以下是我的viewDidLoad和viewDidUnload方法 - (void)viewDidLoad { [super viewDidLoad]; saved_news.rowHeight =85; a

我有点看不清楚。在我第一次打开它时,它可以完美地加载,但是在第二次尝试之后,它没有进入viewDidLoad方法,这导致数据不能在我的tableview上刷新。我还正确地发布了dealloc方法。有什么想法吗?我已经通过谷歌搜索过了,但没有得到任何有用的东西。非常感谢你能为我提供的一切帮助

以下是我的viewDidLoad和viewDidUnload方法

- (void)viewDidLoad
 {
[super viewDidLoad];
saved_news.rowHeight =85;
addButton = [[UIBarButtonItem alloc] initWithTitle:@"Edit" style:UIBarButtonItemStyleBordered target:self action:@selector(edititems:)];
[self.navigationItem setLeftBarButtonItem:addButton];
[self setSaved:[CoreData sharedInstance].selectItems];
[saved_news reloadData];
}

- (void)viewDidUnload
{

[super viewDidUnload];
saved = nil;
saved_news = nil;
addButton =nil;
}
viewDidLoad和viewDidUnload通常在控制器的生命周期内只调用一次,除非内存不足。我认为您希望在这里使用的是viewdide:和viewdide:方法。

调用

- (void)viewWillAppear:(BOOL)animated;

- (void)viewDidAppear:(BOOL)animated; 
根据您的要求,在此处加载表格 [Yourtablename重新加载数据]

希望这有帮助。

太好了!您还可以使用ViewWillDisplay:而不是ViewDidDisplay:;这将在表视图出现之前刷新它。