Iphone 一个每秒调用几次的重写方法?还是一个可以安全编码的循环?
制作一个简单的纸牌游戏,当用户控制时应该可以,因为他会按下一个按钮。它将调用分配给该按钮的方法,执行逻辑并更新屏幕 但是当玩家结束时,我希望人工智能运行几秒钟,用它的决定更新屏幕。处理一些逻辑,调用一些动画,然后将控制权交还给用户 在我的控制器类中是否有一个方法可以重写,它是NSObject的一个子类,每次循环或每秒至少调用5-10次?或者你们是怎么处理的 谢谢Iphone 一个每秒调用几次的重写方法?还是一个可以安全编码的循环?,iphone,objective-c,Iphone,Objective C,制作一个简单的纸牌游戏,当用户控制时应该可以,因为他会按下一个按钮。它将调用分配给该按钮的方法,执行逻辑并更新屏幕 但是当玩家结束时,我希望人工智能运行几秒钟,用它的决定更新屏幕。处理一些逻辑,调用一些动画,然后将控制权交还给用户 在我的控制器类中是否有一个方法可以重写,它是NSObject的一个子类,每次循环或每秒至少调用5-10次?或者你们是怎么处理的 谢谢 -代码只需创建一个NSTimer,它以您想要的频率调用tick方法。但请记住,NSTimer不能保证精确,因此为了避免逐渐累积错误,您
-代码只需创建一个NSTimer,它以您想要的频率调用tick方法。但请记住,NSTimer不能保证精确,因此为了避免逐渐累积错误,您可能需要检查实际已过的时间(例如,如果计时器在500个刻度上平均延迟10毫秒,则取决于精确计时的代码将延迟5秒).看起来你根本不想要背景线程(至少不是你制作的)或计时器 你真正想做的是在视觉上为AI动作设置动画,为此,请看CoreAnimation的内容,为AI动作定义动画,然后播放它们。可以指定动画要使用的时间段 查看本项目,了解从简单到复杂的动画示例:
你的问题有点不清楚。您是否询问如何阻止用户采取任何行动?您是否正在寻找这种每秒5-10次的方法,因为您希望将其用于调度?如果是这样的话,你可能想看看NSTimer。是的,我需要设置一个回调,以便更新屏幕。当控制权移交给AI玩家时,我需要更新/设置他的动作动画。或者为自己生成一个线程来运行一个continuos循环,该循环可以包含一个状态机之类的东西。谢谢Chuck!我要试一次。:)