通过didSelectRow UIPickerView传递托管对象数据

时间:2011-07-01 05:03:28

标签: core-data uipickerview nsmanagedobject nsmanagedobjectcontext

我对如何通过didSelectRow UIPickerView操作传递我提取的托管对象数据感到有点迷失。

在上一个视图中,我传递了CalcInfo对象,如下所示:

CalcInfo *calc = (CalcInfo *)[_calcInfos objectAtIndex:indexPath.row];
self.myPageOneViewController.calcInfos = calc;

我成功地将calcInfos.attribute用于我的所有IBAction:(id)发送者按钮,但是pickerView无法获取/使用数据。 updateLabel操作始终将calcInfos.attribute设置为NULL。这是我的一些代码

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
[self updateLabel];

}

- (void)updateLabel {

double stdrate = [calcInfos.infusionstd doubleValue];
double lowrate = [calcInfos.infusionlow doubleValue];

if (calcInfos.infusionlow == NULL) {
    NSLog(@"It's null");
}

}

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

选择器视图是具有自己的硬连线控制器的子视图。它返回在其委托消息“didSelectRow:inComponent”中选取的行和列/组件。

您需要将该信息传递给updateLabel方法,以便将选择器视图选择与您的托管对象相关联。现在,该方法什么都不做。