这个问题在这里已经有了答案:
Best Answer-推荐答案 strong>
您不能将 Objective-C 函数用作 C 函数的回调。
您可以做的是使用最后一个参数,旨在传递您想要的任何数据,将指针传递给您的类实例。
AudioServicesAddSystemSoundCompletion (id,
NULL,
NULL,
MyAudioServicesSystemSoundCompletionProc,
self);
在 C 回调函数体内,将指针转换为您的类,然后使用它!
void MyAudioServicesSystemSoundCompletionProc (SystemSoundID ssID, void *clientData);
{
MyClass *obj = (MyClass*)clientData;
// use obj in the normal Objective-C way!!!
}
关于ios - 在回调函数中调用 Objective-C 方法,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/22586472/