0

我有一个 NSTableView,每个单元格都包含一个NSPopUpButtonCell. 我已将NSPopUpButtonCell' 操作设置为仅检查所选索引的方法(以便可以保存并重新加载表)。

thePopUpButtonCell.action = @selector(popUpChangedValue);

-(void)popUpChangedValue {

    NSLog(@"%ld", [thePopUpButtonCell indexOfSelectedItem]);

}

无论我选择什么,它都说选择的索引是 0,即使它不是。你知道是什么原因造成的吗?

4

2 回答 2

3

我这样做的方法是使用绑定。您需要数组中的一个字段(NSDictionary 中的键值对)来保存弹出窗口选择的值。在 IB 中,您将拥有一个数组控制器,其内容数组绑定到您的数组(包括我上面提到的字典)。带有弹出窗口的列将其 Selected Value 绑定到数组控制器的排列对象,并带有字典中键名的模型键路径。当您在弹出窗口中更改选择时,数组的值将通过绑定的魔力进行更新。

于 2012-08-04T23:35:37.730 回答
0

看起来你thePopUpButtonCell的可能也是零?保留等可能存在一些问题。

于 2012-08-04T23:06:53.820 回答