我使用简单的UIColor类别作为随机颜色。
+ (UIColor *)randomColor {
return [UIColor colorWithRed:arc4random_uniform(255)/255.0
green:arc4random_uniform(255)/255.0
blue:arc4random_uniform(255)/255.0
alpha:1.0];
}
我在viewDidAppear:方法中测试了这段代码。
Method method = class_getClassMethod([UIColor class], @selector(randomColor));
NSLog(@"color=%@, method=%d", [UIColor randomColor], (method != NULL));
UIColor * color = [UIColor colorWithRed:arc4random_uniform(255)/255.0
green:arc4random_uniform(255)/255.0
blue:arc4random_uniform(255)/255.0
alpha:1.0];
NSLog(@"color=%@", color);
第一次出现viewC时,效果非常好。
color=UIDeviceRGBColorSpace 0.0509804 0.0862745 0.160784 1, method=1
color=UIDeviceRGBColorSpace 0.784314 0.509804 0.964706 1
但是在我呈现UIPickerImageController并取消它之后, 它显示了不同的结果。
color=(null), method=1
color=UIDeviceRGBColorSpace 0.254902 0.576471 0.937255 1
为什么会出现这种情况? 这真的很奇怪。 :(