分数标签显示值覆盖
Posted
技术标签:
【中文标题】分数标签显示值覆盖【英文标题】:score label display value overwrites 【发布时间】:2016-01-22 21:45:26 【问题描述】:当分数更新时,一个新的分数值标签会覆盖显示屏上的旧分数,因为这个分数是不可读的,如何更新新分数?这是我得到的:
SKLabelNode *ScoreLabel;
NSInteger score = 0;
-----------------------------
-(void)Scoring
score = score +1;
ScoreLabel = [SKLabelNode labelNodeWithFontNamed:@"Arial"];
ScoreLabel.position = CGPointMake(CGRectGetMidX(self.frame), 960);
ScoreLabel.text = [NSString stringWithFormat:@"%ld",(long)score];
[self addChild:ScoreLabel];
【问题讨论】:
【参考方案1】:每次分数更改顶部的新标签时,您都会添加。像这样更改代码:
-(void)Scoring
score = score +1;
if (ScoreLabel == nil)
ScoreLabel = [SKLabelNode labelNodeWithFontNamed:@"Arial"];
ScoreLabel.position = CGPointMake(CGRectGetMidX(self.frame), 960);
[self addChild:ScoreLabel];
ScoreLabel.text = [NSString stringWithFormat:@"%ld",(long)score];
【讨论】:
支票应该是ScoreLabel == nil
或简单的!ScoreLabel
。你也可以暗示变量和方法应该以小写字母开头,因为这里的语法高亮已经很混乱了。
谢谢,我尝试解决这个问题好几天以上是关于分数标签显示值覆盖的主要内容,如果未能解决你的问题,请参考以下文章
当我自动完成输入字段时,标签会覆盖值,并且加载时也不会获得长度
使 spritekit 中的 SKLabelNode 出现在所有其他精灵之上