Приложение для iOS, над которым я сейчас работаю, основано на вкладках, и одна из вкладок - UITableViewController.
Дело в том, что когда я открываю эту вкладку с пустым источником данных (по какой-либо причине)Я хотел бы привести другое представление, с каким-нибудь сообщением / изображением, вместо пустого представления, которое я получаю с помощью tableviewcontroller.
Я пробовал что-то подобное:
- (void)viewWillAppear:(BOOL)animated {
if ([myData count] == 0) {
if (!emptyView) {
emptyView = [[UIView alloc] initWithFrame:self.view.frame];
UILabel *emptyMsg = [[UILabel alloc] initWithFrame:CGRectMake(0, self.view.frame.size.height / 2, self.view.frame.size.width, 20)];
emptyMsg.text = @"This is Empty !";
emptyMsg.textAlignment = UITextAlignmentCenter;
[emptyView addSubview:emptyMsg];
}
[self.view insertSubview:emptyView atIndex:0];
}
else {
if (emptyView != nil) { [emptyView removeFromSuperview]; emptyView = nil; }
[self.tableView reloadData];
[super viewWillAppear:animated];
}
}
С emptyView , определенным как iVar в контроллере представления.
Но это не работает, как ожидалось, и я не могу найти причину: /
Может любойиз вас на это взглянуть и дать мне правильный способ сделать такое поведение?
Спасибо,