2011-03-30 92 views
2

我正在写一个带有渐变图像背景的标签的iPad应用程序。这已经在4.2,但它不再工作。每次我尝试运行时,无论我处于4.2还是4.3,我都会得到SIGABRT。我将把下面的代码放在下面,我会很感激任何帮助。谢谢。当调用'UIColor colorWithPatternImage'时阻止iOS SIGABRT

LabelSingAvg = [[UILabel alloc] initWithFrame:CGRectMake(70, -300, 200, 800)]; 
LabelSingAvg.text = @"99.8"; 
LabelSingAvg.font = [UIFont systemFontOfSize:90]; 
UIImage *myGradient = [UIImage imageNamed:@"textGradient.png"]; 
//Line that causes SIGABRT below: 
LabelSingAvg.textColor = [UIColor colorWithPatternImage:myGradient]; 
LabelSingAvg.backgroundColor = [UIColor clearColor]; 
LabelSingAvg.textAlignment = UITextAlignmentCenter; 
LabelSingAvg.adjustsFontSizeToFitWidth = YES; 
LabelSingAvg.layer.shadowOpacity = .5; 
LabelSingAvg.layer.shadowRadius = 4.0; 
LabelSingAvg.layer.shadowColor = [UIColor blackColor].CGColor; 
LabelSingAvg.layer.shadowOffset = CGSizeMake(1.0, 1.0); 
//LabelSingAvg.alpha = 0.8; 
[self.view addSubview:LabelSingAvg]; 
+1

你确定'myGradient'不是'nil'吗? – FreeAsInBeer 2011-03-30 13:23:53

+0

嗯,我认为,你的图像是零...无论如何,它可能会被释放(我真的怀疑),在这种情况下,尝试写在一行; p [[UIColor colorWithPatternImage:[ UIImage imageNamed:@“textGradient.png”]];' – Lepidopteron 2011-03-30 13:32:33

+0

请你可以发布崩溃的调试器堆栈跟踪? – 2011-03-30 13:51:12

回答

0

没关系,我明白了。谢谢你的帮助。我正在引用的图像已移出我的资源文件夹。

+0

此外,colorWithPatternImage不保留图像,所以你也需要保留它。 – jjxtra 2013-12-20 22:18:47