如果取消配对,我可以阻止匹配处理程序被调用吗?

时间:2014-04-12 05:26:28

标签: ios objective-c game-center gamekit

当您使用GKMatchMaker的{​​{1}}时,您会将完成处理程序传递给它。

如果你打电话

findMatchForRequest

配对确实会被取消。您将提供您提供的完成处理程序。它将使用[[GKMatchmaker sharedMatchmaker]cancel]; 调用,描述用户取消了匹配。

有没有办法取消处理程序被调用?也就是说,如果我使用NSError,我希望永远不会调用处理程序,因为我已经知道匹配已被取消。

当然,我可以有一些cancel标志 - 当调用处理程序时,我可以检查这个标志:如果它是真的,那么绝对不做任何事情。然而,我想知道是否有更简单的方法(即:取消处理程序被调用)。

iOS 7。

1 个答案:

答案 0 :(得分:0)

虽然您看到的行为是正常的,并且如果您真的不希望因某种原因调用处理程序,您可以在取消之前将处理程序清零,这将阻止在取消时调用它。确保在启动下一个调用之前重新分配处理程序。