NSMutableDictionary *sample6 = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"Title6",@"Title",[NSNumber numberWithBool:NO],@"state",nil];
在IB中,我使用NSbuttonCell(复选框)创建了一个表视图.
我能够使用以下表格列绑定显示复选框状态(已选中或未选中):
Value - ArrayController.arrangedobjects.state
在这种情况下,它显示了一个带有标题的复选框数组 – “Check”,如下面的屏幕截图所示:
Now my aim is to show checkBoxes Title using bindings,such that it
gets value from same mutable dictionary from which it is getting its
state.
我尝试按钮单元格的绑定,但它不起作用:
Title -> ArrayController.selection.Title
我也试过这个按钮单元的绑定:
Title -> ArrayController.arrangedobjects.Title
但它没有用,在使用上面的绑定之后看起来像这样:
任何人都可以建议我使用哪个控制器密钥,如果这不是显示标题的正确方法那么这样做的正确方法是什么?
解决方法 不幸的是,如果你想这样做,你需要编写一些代码.将表列值绑定到数组时,表列正在处理原型数据单元格,设置其值,并为每行“标记”它.按钮单元格的绑定不会通过表格列“公开”,因此简单的绑定不会为您执行此 *** 作.回答你的问题
所以.由于只显示了值绑定,因此如果您确实希望复选框的标题反映该值,则必须手动设置标题(即,您确实希望复选框同时处理检查状态和显示标题).要做到这一点,你必须将绑定与< NStableDelegateProtocol> .每次询问时,使用-tableView:willDisplayCell:forTableColumn:row:方法将单元格的-Title属性设置为数组控制器的-arrangedobjects数组中的正确对象的属性.混合绑定和数据源/委托方法实际上比最基本的应用程序更常见,所以不要担心你做的事情很脏.注意:您将无法通过执行此 *** 作来支持编辑标题,因为它是一个复选框.
另类设计
就个人而言,我会避免所有这些,只为标题添加一个单独的表列.将新列的值绑定到数组控制器的arrangeObjects.Title并关闭复选框按钮单元格的标题,以便仅显示复选框本身.这大大简化了整个过程,并允许编辑标题.
总结以上是内存溢出为你收集整理的objective-c – 如何使用绑定在表视图中显示按钮单元格(复选框)标题全部内容,希望文章能够帮你解决objective-c – 如何使用绑定在表视图中显示按钮单元格(复选框)标题所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)