gpt4 book ai didi

ios - 尝试显示其 View 不在窗口层次结构中(使用 segue 时)目标 - c

转载 作者:行者123 更新时间:2023-11-29 01:43:59 24 4
gpt4 key购买 nike

我有 2 个 View Controller ,并且使用以下命令出现上述错误:

-(void)hitwtf{

if (CGRectIntersectsRect(ufo.frame, sanchez.frame)) {
if(((sanchez.frame.origin.y + sanchez.frame.size.height - 5) <= (ufo.frame.origin.y)) && (sanchezJumping < 0))
{

[self performSegueWithIdentifier:@"pushToGameOver" sender:self];
}
}
}

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{

if([segue.identifier isEqualToString:@"pushToGameOver"]){

AudioServicesPlaySystemSound(sanchezdeath);


GameOverViewController *controller = (GameOverViewController *)segue.destinationViewController;
controller.CurrentScore = CurrentScore;

}
}

它有效, View 被显示,但我刚刚收到此错误。我不使用任何按钮,当两个帧相互碰撞时 View 应该改变,所以我需要 PerformSegueWithIdentifier,不是吗?

编辑:

答案是:

- (void)viewWillDisappear:(BOOL)animated {
if(timer)
{
[timer invalidate];
timer = nil;
}
}

最佳答案

我对你的问题有两个想法(回应评论。):

要么将 sanchez/ufo 移回碰撞前的位置。

或者添加一个 bool 值

@property (nonatomic, assign) BOOL collision;

并将其添加到您的方法中:

if(!self.collision && ((sanchez.frame.origin.y + sanchez.frame.size.height - 5) <= (ufo.frame.origin.y)) && (sanchezJumping < 0))
{
self.collision = YES;
[self performSegueWithIdentifier:@"pushToGameOver" sender:self];

关于ios - 尝试显示其 View 不在窗口层次结构中(使用 segue 时)目标 - c,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32117571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com