我有一个带有自定义单元格和节标题的 TableView。标题向我显示国家,自定义单元向我显示城市。
看起来像这样:
美国
纽约
洛杉矶
德国
柏林
法兰克福
每个单元格都有一个按钮。按下后它将导航并将城市名称推送到详细视图。
问题是,按下按钮后我不知道如何确定城市名称。
我有一个解决方案,但它不再起作用了:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSManagedObject *managedObject = [self.fetchedResultsController objectAtIndexPath:indexPath];
StandortCell *cell = (StandortCell *)[tableView dequeueReusableCellWithIdentifier:@"ortCell"];
[cell.detailButton setTag:indexPath.row];
cell.ortLabel.text = [managedObject valueForKey:@"stadtname"];
}
- (IBAction)detailButton:(id)sender {
UIView *contentView = [sender superview];
UITableViewCell *cell = (UITableViewCell *)[contentView superview];
NSIndexPath *cellIndexPath = [self.tableView indexPathForCell:cell];
NSInteger section = cellIndexPath.section;
UIButton * myButton = sender;
int row=myButton.tag;
NSIndexPath * indexPath = [NSIndexPath indexPathForRow:row inSection:section];
StrasseViewController *detail = [self.storyboard instantiateViewControllerWithIdentifier:@"strasse"];
self.selectedStandort = [self.fetchedResultsController objectAtIndexPath:indexPath];
detail.currentStandort = self.selectedStandort;
[self.navigationController pushViewController:detail animated:YES];
}
当我使用我的旧代码时,它只会在第一部分显示正确的街道行。它没有检测到其他部分(国家);
当我在第三部分选择第一个城市时。它将向我显示第一部分中的第一个城市。
我希望你能帮助我。