how to update data in tableView?

You have to remove all values from your array then you have to call table reload data

// In the method where you will get new values
[tableViewValues removeAllObjects];  
[tableViewValues add:@"new values"];  
 //reload table view with new values
[self.tableView reloadData];

You can call

[self.tableView reloadData];

to reload all data, however, you will need to program a way to have the array that you want populate the table. Maybe you want your -cellForRowAtIndexPath to call a private method that conditionally picks the correct array.


You'd need to (release and) recreate same tableViewValues array and then call reloadData method on tableView like this:

[self.tableView reloadData];

This will work if you're on table view controller and self.tableView points to the table in question.


I've had this problem many times and I always make the same mistake.

[self._tableview reloadData] works!

The question is the place where you populate the table.

I did it in -(void)viewDidLoad and the table was updated with the same data. Apparently nothing happens.

Update the content of your table view (plist, dictionary, array, whatever) in the same place where you call [self._tableview reloadData], just before.

THAT IS THE KEY!!!

Do a test:

#pragma mark - Actions

- (IBAction)refreshParams:(id)sender {

   self.dictionary = nil;

   [self._tableView reloadData];
}

You can see how disappear the tableview content when you push the refresh button. Obviously, this is an example. I use a dictionary to populate the table and a button to refresh the content.