我以编程方式创建一个UITableView,其中不同的单元格和部分连接到故事板中的其他视图,如下图所示:
我的问题是:
如何将这3个单元格连接到这些不同的视图,请你帮助我
提前致谢!
这是我的代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *key = [[self sectionKeys] objectAtIndex:[indexPath section]];
NSArray *contents = [[self sectionContents] objectForKey:key];
NSString *contentForThisRow = [contents objectAtIndex:[indexPath row]];
static NSString *CellIdentifier = @"CellIdentifier";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:CellIdentifier];
}
[[cell textLabel] setText:contentForThisRow];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
_selectedIndex = indexPath.row;
[self.tableView reloadData];
}
修改 当我使用这个方法它只是加载WorkTime视图,即使用户选择缺席单元格, 有人知道为什么吗?
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
_selectedIndex = indexPath.row;
[self.tableView reloadData];
//maybe you could use a switch/case here, to assign the correct string to the segue identifier.
switch (indexPath.row){
case 0:
[self performSegueWithIdentifier:@"test" sender:self];
break;
case 1:
[self performSegueWithIdentifier:@"set" sender:self];
break;
case 2:
[self performSegueWithIdentifier:@"get" sender:self];
break;
}
}
答案 0 :(得分:1)
您的最后一种方法是您想要的方式,但从外观上看,您需要检查indexPath.section
而不是indexPath.row