-(void)reloadView{
NSLog(@"IN RELOAD VIEW ");
[[self tableView] reloadData];
}
- (void)viewDidLoad {
UIBarButtonItem * barButton = [[UIBarButtonItem alloc] initWithCustomView:activityIndicator];
[self navigationItem].rightBarButtonItem = barButton;
[activityIndicator startAnimating];
[self callStudentsWebService];
[super viewDidLoad];
self.clearsSelectionOnViewWillAppear = NO;
self.contentSizeForViewInPopover = CGSizeMake(320.0, 600.0);
[self setTitle:@"Students"];
self.navigationController.toolbarHidden = NO;
self.navigationController.toolbar.barStyle = UIBarStyleBlack;
UIBarButtonItem *add = [[UIBarButtonItem alloc] initWithTitle:@"Add Student" style:UIBarButtonItemStyleBordered target:self action:@selector(addStudent)];
UIBarButtonItem *flexible = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *import = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemOrganize target:self action:@selector(addStudent)];
NSArray* toolbarItems = [NSArray arrayWithObjects:add,flexible,import, nil];
self.toolbarItems = toolbarItems;
}
Выше мой код в классе, который является подклассом UITableViewController
.Теперь моя проблема в том, что когда я впервые захожу на экран, он получает записи из веб-сервиса по методу [self callStudentsWebService]
.Теперь у меня есть кнопка в uitoolbar
в том же представлении, которая обновляет список.Я вызываю метод reloadView
для обновления List
, но он вызывает методы numberOfRowsInSection
и viewDidLoad
, но не вызывает метод cellForRowAtIndexPath
.Но когда я перехожу на другой экран и возвращаюсь снова, он обновляет List
с самого начала.
В чем может быть причина ??Пожалуйста, помогите, я новичок в разработке iPad.И я делаю все это в iPad.
Большое спасибо
EDITED
@interface StudentsList : UITableViewController {
DetailViewController *detailViewController;
UIToolbar *toolbar;
UIActivityIndicatorView *activityIndicator;
}