我创建了这样一个梯度:
NSGradient *g = [[NSGradient alloc] initWithColorsAndLocations:
[NSColor colorWithWhite:1 alpha:1], 0,
[NSColor colorWithWhite:0 alpha:0], 1, nil];但是当我用drawInRect:angle:把它画成图像时,我会得到一个普通的白色图像,而不是一个梯度。怎么了?
发布于 2014-10-24 19:34:39
由于-initWithColorsAndLocations:是一个可变的函数,编译器不知道参数需要什么类型(除了第一个参数)。被调用者要求“位置”为CGFloat值,但是当传递1或0时,它被作为int传递,因此它被解释为一个非常小的浮点值。
解决方案是将(CGFloat)0.0和(CGFloat)1.0传递给位置,而不是0和1。
https://stackoverflow.com/questions/26555014
复制相似问题