调用一个块的方法?
我是ARC新手。 我想在一个完整的块中调用一个方法,但是我得到了这样的警告: 在这个块中强烈地捕获'self'可能会导致一个保留周期。 。 码:
- (void) handlerComplete { //... } - (void) loadData { ... operation.completeBlock = ^(NSInteger index) { [self handlerComplete]; }; }
有什么build议? 谢谢。
尝试
- (void) loadData { __weak MyClassType *myClass = self; operation.completeBlock = ^(NSInteger index) { [myClass handlerComplete]; }; }
请改用一个弱引用:
operation.completeBlock = ^(NSInteger index) { __weak Foo *bar = self; [bar handlerComplete]; };
我认为这将工作,虽然我没有证实。
- 如何在doRegisterForRemoteNotificationsWithDeviceToken以外的方法中使用设备标记?
- 如何在iOS中以url的forms发布数据?
- 为什么你有时候会把一个NSArray转换成NSMutableArray,有时你不能呢?
- ios CoreBluetooth 未知错误:1309
- 如何在iOS上编译fftw3
- 为我的应用程序创build一个夜晚主题
- Xcode 5.1未使用的常量视为错误
- 当我在我的xcode项目中使用#include <OpenGL / gl.h>时,它在哪里查找gl.h文件?
- 在xcode 5中实例化ViewControllerWithIdentifier