Например, для вызова authenticateHandler
@property(nonatomic, copy) void(^authenticateHandler)(UIViewController *viewController, NSError *error)
Маленькая шляпка ^(UIViewController *viewController, NSError *error)
указывает на то, что вызов должен иметь анонимный функциональный блок:
[lp setAuthenticateHandler:(^( UIViewController* vc, NSError *nsError )
{
if( !nsError )
{
puts( "GC auth success" ) ;
}
})];
Но скажем, я хочу, чтобы функция, которую я использую в своем вызове setAuthenticateHandler
, была именованной функцией. В других местах я видел использование @selector(functionName)
, но здесь это не работает.
__weak YourClassName* weakSelf = self; [lp setAuthenticateHandler:(^( UIViewController* vc, NSError *nsError ) { if( !nsError ) { [weakSelf gcPlayerLoggedInSuccess];}
Вам нужен указатель__weak
из-за -to-a-retain-cycle">сильное захват себя в этом блоке может привести к проблеме цикла сохранения - person bobobobo   schedule 29.03.2013