【问题标题】:Continue Checking Method [closed]继续检查方法[关闭]
【发布时间】:2012-01-31 07:41:24
【问题描述】:

我有一个开始我的游戏的方法 (startGame)。我称之为viewDidLoad ([self startGame];)。问题是,开始游戏方法在开始游戏之前检查对象是否已经移动。我现在的设置只调用该方法一次并且不再检查它,这意味着我的游戏永远不会开始。关于如何在游戏开始之前继续检查方法然后停止检查的任何想法?

谢谢。 2012年快乐

【问题讨论】:

    标签: ios xcode methods


    【解决方案1】:

    您可以做一些事情。最简单的事情之一就是使用NSTimer。所以在你的viedDidLoad 方法中你可以这样做:

    [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(checkObjectMoved:) userInfo:NULL repeats:YES]; // check every 1 second
    

    那么你会有:

    - (void)checkObjectMoved:(NSTimer *)timer {
      if object has NOT moved return;
    
      [timer invalidate];
      [self startGame];
    }
    

    【讨论】:

    • - (void)checkObjectMoved:(NSTimer *)timer { if(player.center.x != self.view.center.x || player.center.y != self.view.center .y) { [定时器无效]; [自启动游戏]; } }
    • 这样?填料填料
    • 它会等待一秒钟,然后即使我没有移动播放器也会开始
    • 另外,你知道我如何在人输后重置游戏吗?现在它会删除所有内容并重新添加它,这不适用于 start 方法(甚至是我之前的方法)
    • 嗯嗯,这很大程度上取决于您的游戏如何运作。从理论上讲,删除所有内容并重新添加它应该可以工作。
    猜你喜欢
    • 1970-01-01
    • 2023-01-22
    • 2012-11-11
    • 1970-01-01
    • 2021-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多