CAGradientLayer *grad = [CAGradientLayer layer];
grad.colors = $array(ColRGBA2(1, 0, 0, 1), ColRGBA2(0, 1, 0, 1), ColRGBA2(0, 0, 1, 1), ColRGBA2(0, 0, 0, 0));
grad.startPoint = CGPointMake(0, 0);
grad.endPoint = CGPointMake(1, 0);
grad.colors = $array(ColRGBA2(1, 0, 0, 1), ColRGBA2(0, 1, 0, 1), ColRGBA2(0, 0, 1, 1), ColRGBA2(0, 0, 0, 0));
在这句话中有一个美元符号是什么意思?有关于它的链接吗?
最佳答案
这不是语言的特性,这些是一些人使用的集合的便利初始化器。例如:
$array(foo, bar, baz)
扩展为:
[NSArray arrayWithObjects:foo, bar, baz, nil]
我不确定这是否值得麻烦。而且我没有提供这些宏的库的链接,也许其他人有?
顺便说一句,看起来我们将在 Xcode 4.4 中为数组、字典和其他一些对象提供官方文字。细节目前似乎在保密协议(protocol)之下,但有一些 discussion at Hacker News 。
关于iphone - 美元符号在objective-c中是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4713051/