Iphone 四种颜色中有一种返回错误

Iphone 四种颜色中有一种返回错误,iphone,objective-c,ios4,uicolor,Iphone,Objective C,Ios4,Uicolor,我定义了4种颜色 @interface Global : NSObject { UIColor *_EnemyColor; UIColor *_EnemyColor2; UIColor *_TeamColor; UIColor *_TeamColor2; } @property (nonatomic, retain) UIColor *EnemyColor; @property (nonatomic, retain) UIColor *EnemyColor2

我定义了4种颜色

@interface Global : NSObject {

    UIColor *_EnemyColor;
    UIColor *_EnemyColor2;
    UIColor *_TeamColor;
    UIColor *_TeamColor2;

}

@property (nonatomic, retain) UIColor *EnemyColor;
@property (nonatomic, retain) UIColor *EnemyColor2;
@property (nonatomic, retain) UIColor *TeamColor;
@property (nonatomic, retain) UIColor *TeamColor2;

@end

然后在init方法中,我尝试为变量设置一些颜色

- (id)init {
if (self = [super init]) {
    //*******************************************************************
    _TeamColor = [UIColor colorWithRed:0.70196078 green:0.70196078 blue:0.70196078 alpha:1.0];
    //Everything works, if this line is commented out
    _TeamColor2 = [UIColor colorWithRed:0.82352941 green:0.81960784 blue:0.83921569 alpha:1.0];
    switch (arc4random() % 4) {
        case 0:
            _EnemyColor = [UIColor colorWithRed:0.50196078 green:0.47843137 blue:0.41568627 alpha:1];
            _EnemyColor2 = [UIColor colorWithRed:0.63529412 green:0.57647059 blue:0.44705882 alpha:1];
            break;
        case 1:
            _EnemyColor = [UIColor colorWithRed:0.72156863 green:0.59607843 blue:0.37254902 alpha:1];
            _EnemyColor2 = [UIColor colorWithRed:0.81568627 green:0.73333333 blue:0.51764706 alpha:1];
            break;
        case 2:
            _EnemyColor = [UIColor colorWithRed:0.75686275 green:0.47843137 blue:0.23529412 alpha:1];
            _EnemyColor2 = [UIColor colorWithRed:0.85098039 green:0.56470588 blue:0.35686275 alpha:1];
            break;
        case 3:
            _EnemyColor = [UIColor colorWithRed:0.45882353 green:0.6 blue:0.70196078 alpha:1];
            _EnemyColor2 = [UIColor colorWithRed:0.57254902 green:0.65882353 blue:0.74117647 alpha:1];
            break;
    }
我遇到的问题是,只有在使用colorWithRed:Green:Blue:Alpha:设置_teamColor2时,程序才会失败。我得到的错误是

-[UIDeviceRGBColor set]:发送到解除分配实例0x5f4af80的消息 . 我可以用redColor来代替,它会工作的。四分之一的人工作不正常是有原因的吗


所有这些都不应该起作用,因为它们都没有被保留(
[uicolorWithred:green:blue:alpha:][/code>返回一个自动删除的实例)。尝试分配给
self.TeamColor
self.TeamColor2
,依此类推。

这些都不应该工作,因为它们都没有被保留(
[uicolorWithred:green:blue:alpha:
返回一个自动删除的实例)。尝试分配给
self.TeamColor
self.TeamColor2
,依此类推

- (id)init {
if (self = [super init]) {
    //*******************************************************************
    _TeamColor = [UIColor colorWithRed:0.70196078 green:0.70196078 blue:0.70196078 alpha:1.0];
    //Everything works, if this line is commented out
    _TeamColor2 = [UIColor colorWithRed:0.82352941 green:0.81960784 blue:0.83921569 alpha:1.0];
    switch (arc4random() % 4) {
        case 0:
            _EnemyColor = [UIColor colorWithRed:0.50196078 green:0.47843137 blue:0.41568627 alpha:1];
            _EnemyColor2 = [UIColor colorWithRed:0.63529412 green:0.57647059 blue:0.44705882 alpha:1];
            break;
        case 1:
            _EnemyColor = [UIColor colorWithRed:0.72156863 green:0.59607843 blue:0.37254902 alpha:1];
            _EnemyColor2 = [UIColor colorWithRed:0.81568627 green:0.73333333 blue:0.51764706 alpha:1];
            break;
        case 2:
            _EnemyColor = [UIColor colorWithRed:0.75686275 green:0.47843137 blue:0.23529412 alpha:1];
            _EnemyColor2 = [UIColor colorWithRed:0.85098039 green:0.56470588 blue:0.35686275 alpha:1];
            break;
        case 3:
            _EnemyColor = [UIColor colorWithRed:0.45882353 green:0.6 blue:0.70196078 alpha:1];
            _EnemyColor2 = [UIColor colorWithRed:0.57254902 green:0.65882353 blue:0.74117647 alpha:1];
            break;
    }