方法声明的一个新实例,方法不返回一个UILabel
-(UILabel *)returnUILabel:(UILabel *)myLabel color:(UIColor *)labelColor x:(int)xParameter y:(int)yParamater width:(int)widthParameter height:(int)heightParameter
{
CGRect cellFrame = CGRectMake(xParameter, yParamater, widthParameter, heightParameter);
myLabel = [myLabel initWithFrame:cellFrame];
myLabel.text = @"Testing";
myLabel.shadowOffset = CGSizeMake(1,1);
myLabel.backgroundColor = labelColor;
return myLabel;
}
称为低于viewDidLoad中,
UILabel *myLabel = [[UILabel alloc] init];
UIColor *labelColor = [UIColor redColor];
[self.view addSubview:[self returnUILabel:myLabel color:labelColor x:17 y:260 width:140 height:130]];
labelColor = [UIColor yellowColor] ;
[self.view addSubview:[self returnUILabel:myLabel color:labelColor x:170 y:260 width:140 height:130]];
[super viewDidLoad];
在我看来,我只看到黄颜色的标签,而我应该可以看到一个红色和一个黄色。为什么? 同样的方法在UIImageView
上正常工作。
感谢
为了清楚起见,您也可以从方法参数中删除'myLabel'。 – Costique 2012-02-11 19:07:55
好抓!我刚从上面复制了这个方法。谢谢 – 2012-02-11 19:08:44
是的,我知道我有一个标签,这就是我需要的。传递的参数在每种情况下都不相同,所以目前我可以在屏幕上看到添加到不同向量中的两个标签。如果你说的是正确的,为什么这种方法在UIIMageView上工作?为什么我低调? – 2012-02-11 19:10:40