在视图子类技术中选择表行的问题

时间:2011-08-04 10:37:31

标签: iphone

在我的应用程序中,我有表视图单元格。当我选择一个单元格时,它会根据所选单元格获取相应的视图。我已经使用UITableViewCell的自定义子类实现了它,即使用nib文件对单元格进行子类化,而不是使用代码进行子视图。

我使用NSDictionary在viewDidLoad方法

上提供我的单元格数据,如下所示
NSDictionary *row1=[[NSDictionary alloc]initWithObjectsAndKeys:@"Mac", @"Name", @"1.5", @"Rate", nil];

NSDictionary *row2=[[NSDictionary alloc]initWithObjectsAndKeys:@"MINI", @"Name", @"14.4",@"Rate", nil];  NSArray *array=[[NSArray alloc]initWithObjects:row1, row2 nil];
self.computers=array;

在didSelectRowAtIndexPath方法中我使用

 -(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

if (childController==nil) {
    childController=[[computerConverter alloc]initWithNibName:@"computerController" bundle:nil];

    childController.title=@"Select computer to convert";
    NSUInteger row=[indexPath row];
    NSString *selectedComputer=[self.computers objectAtIndex:row];
    NSString *detailMassage=[[NSString alloc]initWithFormat:@"%@",selectedComputer];
    childController.massage =detailMassage;
    childController.title=selectedComputer;
    [detailMassage release];
    [self.navigationController pushViewController:childController animated:YES];
    childController =nil;
}

}

它显示NSException并且不会将我带到另一个相应的视图。任何建议都将受到高度赞赏。

1 个答案:

答案 0 :(得分:1)

row1和row2是字典,因此你不能这样做

childController.title=selectedComputer;

您可能希望从此字典设置键的返回值。我想问题出在上面一行。