使用Cocoa的彩色iCal样式复选框

时间:2010-04-15 07:53:14

标签: cocoa

有没有办法在iCal中使用彩色复选框而不使用自定义绘图?

我查看了文档,但只能找到如何更改背景和文本颜色。

3 个答案:

答案 0 :(得分:2)

通过为复选框启用Core Animation并添加“Hue Adjust”(在“Color Adjustment”中)内容过滤器,您可以实现至少类似于iCal中彩色复选框的功能。如果颜色是静态的,这可以完全在Interface Builder中完成,无需代码。

但要小心,因为有时为各种视图启用Core Animation会导致奇怪的错误(例如,WebViews在Core Animation视图中效果不佳)。

如果您想以编程方式执行此操作,请查看CIFilter(这是一个链接)的文档,您可以使用NSView实例方法setContentFilters:(也是链接)。

答案 1 :(得分:1)

它有点过时了(可以追溯到10.3),但Matt Gemmell在几年前发布了一些用于制作彩色复选框的代码。

http://mattgemmell.com/source

寻找“iTableView。”

我看了第一次可用的代码,但从那时起就没有。此时可能有更好的方法。

答案 2 :(得分:0)

我不敢。我不确定AHIG是否禁止这种事情(可能确实如此),但iCal侥幸逃脱的原因是因为,'嘿!为什么不?'。此外,它是一个Apple应用程序,所以是的。

当然,它仍然可以完成,但不是没有自定义绘图。就个人而言,我建议反对它,而不是看看你想要实现的目标是否可以通过其他方式实现。如果没有,您可以使用iCal中的一些数据文件来构建您的复选框。 (不确定 将会是什么,但是'嘿!为什么不呢?'。