我在Xcode上的编码有问题。 我正在创建一个目标出现的应用程序,然后你必须点击它,但每次点击之间允许的时间逐渐缩短。
我的问题:每当我尝试在点击后进行UILabel更新时,目标会返回到我在视图控制器上的原始位置。 我在这里有所有相关的代码:
-(IBAction)startButtonPressed:(id)sender { startButton.hidden = YES; Text.hidden = YES; targX = arc4random() %769; targY = arc4random() % 925; Target.center = CGPointMake(targX, targY); Target.hidden = NO; } -(IBAction)targetTapped:(id)sender { [Time invalidate]; targX = arc4random() %769; targY = arc4random() % 925; [self scoreAdd:(id)sender]; Target.center = CGPointMake(targX, targY); timeMax = 5 - (Score * 0.05); if (Score >= 90) { timeMax = 0.5; } Time = [NSTimer scheduledTimerWithTimeInterval:timeMax target:self selector:@selector(Lose:) userInfo:nil repeats:NO]; } -(void)Lose:(id)sender { Target.hidden = YES; Text.hidden = NO; } -(void)scoreAdd:(id)sender{ Score = Score + 1; scoreLabel.text = [NSString stringWithFormat:@"Score: %li", Score]; }I am having a problem with my coding on Xcode. I am making an app in which a target appears, then you have to tap it, but the time allowed between each tap shortens gradually.
MY PROBLEM: whenever I try and make a UILabel update after a tap, the target goes back to it's original position on my view controller. I have all relevant code here:
-(IBAction)startButtonPressed:(id)sender { startButton.hidden = YES; Text.hidden = YES; targX = arc4random() %769; targY = arc4random() % 925; Target.center = CGPointMake(targX, targY); Target.hidden = NO; } -(IBAction)targetTapped:(id)sender { [Time invalidate]; targX = arc4random() %769; targY = arc4random() % 925; [self scoreAdd:(id)sender]; Target.center = CGPointMake(targX, targY); timeMax = 5 - (Score * 0.05); if (Score >= 90) { timeMax = 0.5; } Time = [NSTimer scheduledTimerWithTimeInterval:timeMax target:self selector:@selector(Lose:) userInfo:nil repeats:NO]; } -(void)Lose:(id)sender { Target.hidden = YES; Text.hidden = NO; } -(void)scoreAdd:(id)sender{ Score = Score + 1; scoreLabel.text = [NSString stringWithFormat:@"Score: %li", Score]; }最满意答案
print targX = arc4random()%769; targY = arc4random()%925;
在这两种方法中,检查你是否得到了正确的分数。 并检查生成的点位于设备屏幕中。
print targX = arc4random() %769; targY = arc4random() % 925;
in both methods , check whether you are getting proper points. And check generated points lies with in device screen.
更多推荐
发布评论