我正在通过一个包含部分的数组填充tableView。
- (void)viewDidLoad
{
[super viewDidLoad];
listOfItems = [[NSMutableArray alloc] init];
group01List = [[NSArray alloc]initWithObjects:@"Row 1",@"Row 2", nil];
NSDictionary *group01Dict = [NSDictionary dictionaryWithObject:group01List forKey:@"Group"];
group02List = [[NSArray alloc]initWithObjects:@"Row 3",@"Row 4", nil];
NSDictionary *group02Dict = [NSDictionary dictionaryWithObject:group02List forKey:@"Group"];
[listOfItems addObject:group01Dict];
[listOfItems addObject:group02Dict];
// Do any additional setup after loading the view from its nib.
}
工作正常,我按照我想要的方式在视图中正确。
现在我有一个链接到它们的URL,它们显示在显示器中,如果我有一个部分,我可以使用Switch / case方式将单元格链接到不同的URL,如下所示:
switch (indexPath.section){
case 0:switch (indexPath.row) {
case 0:
fileURL = [NSURL URLWithString:kStringURLDismissKeyboard_h_Comments];
break;
case 1:
fileURL = [NSURL URLWithString:kStringURLDismissKeyboard_m_Comments];
break;
}
case 1:switch (indexPath.row) {
case 0:
fileURL = [NSURL URLWithString:kStringURLDismissKeyboard_h];
break;
case 1:
fileURL = [NSURL URLWithString:kStringURLDismissKeyboard_m];
break;
}
字符串在顶部已经#defined - 所以一切都很好。
但是当我想在TableView中使用组时,我很想知道如何更改它。
我有这个代码可以将我的didSelectRowAtIndexPath链接到正确的部分,但由于我在交换机中使用NSURL(fileURL),我需要以某种方式将它们组合。
NSDictionary *dictionary = [listOfItems objectAtIndex:indexPath.section];
NSArray *array = [dictionary objectForKey:@"Group"];
NSString *selectedGroup = [array objectAtIndex:indexPath.row];
任何帮助都会受到赞赏。
答案 0 :(得分:1)
我可能不完全理解这个问题,但是如果你使用部分和行,你的开关应该看起来像这样:
switch (indexPath.section(
{
case 0:
switch (indexPath.row)
{
case 0:
fileURL = [NSURL URLWithString:kStringURLDismissKeyboard_h];
break;
case 1:
fileURL = [NSURL URLWithString:kStringURLDismissKeyboard_m];
break;
}
break;
case 1:
...
}