您好,谢谢您的时间。我是IOS / Objective C的新手。
我在viewcontroller的顶部全局设置了多个变量。
NSMutableArray * A;
NSMutableArray * B;
NSMutableArray * C;
现在当有人在tableview中选择一个单元格时,我想使用该单元格的名称来选择一个全局变量。我发现了一些用viewcontrollers来做这件事,但我也需要一些misc变量。我正在努力:
id myNewController = [[NSClassFromString(selected) alloc] init];
[[self navigationController] pushViewController:myNewController animated:YES];
所以它会是这样的:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
// Save text of the selected cell:
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
stringVariable = cell.textLabel.text;// value=A,B or C
// match string to array and load that array.
??
}
提前感谢您提供任何帮助,如果有人问过我很抱歉,但我找不到任何有用的东西,作为最后的手段我求助:)
答案 0 :(得分:1)
您可能最好将数组存储为字典上的键,而不是单个字段。例如:
NSDictionary* dictionary;
dictionary = @{
@"A": [[NSMutableArray alloc] init],
@"B": [[NSMutableArray alloc] init],
@"C": [[NSMutableArray alloc] init]
};
然后,当您选择行时,可以按键查找数组:
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
NSString* key = cell.textLabel.text;// value=A,B or C
NSMutableArray* array = dictionary[key];
....