我遇到一些麻煩顯示器,其中我操縱一個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