Чтобы изменить источник данных табличных представлений, вам нужно изменить то, что возвращается из numberOfRowsInSection в вашем делегате таблицы.Один из способов сделать это - использовать перечисление для представления набора данных, который я хочу использовать, и иметь локальную переменную для сохранения выбранного.
typedef enum
{
DataSetOne,
DataSetTwo
} DataSetEnum
@property(nonatomic, retain) DataSetEnum dataset;
@property(nonatomic, retain) NSArray *datasetone;
@property(nonatomic, retain) NSArray *datasettwo;
- (void) viewDidLoad
{
dataset = DataSetOne;
}
- (IBAction) buttonPressed
{
dataset = DataSetTwo;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if(dataset == DataSetOne)
{
return [self.datasetone count];
}
else if(dataset == DataSetTwo)
{
return [self.datasettwo count];
}
}
А затем в cellForRowAtIndexPath
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if(dataset == DataSetOne)
{
//configure cell
}
}