我遇到一些麻烦显示器,其中我操纵一个UILabel,即使我用的XCode 4的UILabel隐藏似乎不工作
myLabel.hidden=YES; ...manipulation code... myLabel.hidden=NO;
标签从来没有“隐藏”和操纵(显示CATransform3DMakeRotation)(您可以看到标签翻转)。
在XCode中,我在“myLabel.hidden = YES;”处设置了一个断点行,但是当我遍历代码时,它不会隐藏。
我必须缺少一些东西才能实现“隐藏”方法,对吧? 某种刷新或更新标签? 谢谢...
这是代码。 “SetStartPosition”是从几个地方调用的,而不仅仅是“doubleTap”。
-(void)doubleTap{
//stop the timer
[myMover invalidate]; //the timer simply moves the label position
myMover = nil;
msgLabel.hidden=YES;
isMirrored=!isMirrored;
[self setStartPosition]; //flips the label
msgLabel.hidden=NO;
//restart the timer
[self runMover];
}
- (void)setStartPosition{
if(isMirrored){
startPosition=(msgLabel.frame.size.width/2) * -1;
msgLabel.layer.transform = CATransform3DMakeRotation(M_PI, 0.0f, 1.0f, 0.0f); //M_PI rotates 180 degrees
}else{
startPosition=(screenHeight)+(msgLabel.frame.size.width/2);
msgLabel.layer.transform = CATransform3DMakeRotation(0.0, 0.0f, 1.0f, 0.0f); //0.0 rotate to normal
}
newX=startPosition;
newY=screenWidth/2;
newFrame = msgLabel.frame;
newFrame.size.height = screenWidth;
newFrame.origin.x =newX;
newFrame.origin.y=newY;
msgLabel.frame = newFrame;
}
您是否检查过myLabel不是'nil'? – Zaphod 2012-01-27 18:03:33