【发布时间】:2013-04-10 23:37:13
【问题描述】:
我正在构建一个表格以在我的首选项窗格中显示一些数据。所有数据都存在于 NSUserDefaults 中。表格中有一个复选框可以启用/禁用所列设备的数据。复选框是唯一可编辑的单元格。
表格正确显示了共享用户默认值中的数据。所以我知道我已将表格内容正确映射到正确的共享用户默认模型密钥路径。但是,当我切换复选框时,新数据根本不会写入默认值。
这里是复选框设置的一瞥...
我尝试将选择器操作分配给 NSButton(复选框),认为我可以通过编程方式设置默认值。奇怪的是,这个动作永远不会被触发。我设置了一个简单的操作,只是做了一个 NSLog。单击复选框时它从未被触发。
更新:你可以看到我的默认数据结构是什么样子的,这里是默认命令的输出。这张表后面实际上没有任何代码。
{
ClimateDeviceData = (
{
deviceName = Nest;
deviceSetting = "76";
display = 1;
structure = Home;
uuid = d01AA02AB145204VR;
}
);
ClimateLoginAtLaunch = 1;
ClimateMenuBarIconStyle = "Nest Temp Settings";
}
更新 #2:此时我会接受一个解决方案,即仅能够从复选框中调用选择器。
【问题讨论】:
-
尚不清楚您将表格视图单元格视图绑定到数据的级别,但您是否可能需要更高级别? ClimateDeviceData.display?
-
表视图绑定到共享用户默认控制器,模型键路径已设置为“ClimateDeviceData”。
标签: cocoa cocoa-bindings