我正在构建一个表,以在我的偏好设置面板中显示一些数据。所有的数据都在NSUserDefaults中。表格中有一个复选框,可以启用/禁用列出的设备的数据。该复选框是唯一可编辑的单元格。将复选框绑定到共享用户默认值
该表正确显示共享用户默认值中的数据。所以我知道我已将表格内容正确地映射到正确的共享用户默认模型关键路径。但是,当我切换复选框时,新数据根本不会写入默认值。
这里是一个复选框设置的一瞥......
我试图分配选择动作的NSButton(复选框),以为我可以编程设置为默认值。奇怪的是,这个动作从来没有被触发。我设置了一个简单的动作,只是做了一个NSLog。点击复选框时它从未被解雇。
更新:因此,您可以看到我的默认数据结构是什么样子,下面是defaults命令的输出。这张表背后并没有真正的代码。
{
ClimateDeviceData = (
{
deviceName = Nest;
deviceSetting = "76";
display = 1;
structure = Home;
uuid = d01AA02AB145204VR;
}
);
ClimateLoginAtLaunch = 1;
ClimateMenuBarIconStyle = "Nest Temp Settings";
}
更新#2:在这一点上,我会接受的只是能够从复选框调用一个选择的解决方案。
目前还不清楚在什么水平你已经绑定的实现代码如下单元视图中的数据,但它可能需要另一个层次高? ClimateDeviceData.display? – 2013-04-11 17:50:27
表视图绑定到共享用户默认值控制器,并且模型关键路径已被设置为'ClimateDeviceData'。 – 2013-04-11 18:09:18