如果实现了如何检查块?

时间:2017-05-16 05:36:57

标签: ios objective-c block

在我的代码中,如果我直接使用该块:

- (IBAction)checkPendingAction:(UIButton *)sender {
    self.block(sender.titleLabel.text);  // if the block is no realize, there will report EXC_BAD_ACCESS(code=x, address=0x11xx)
}

如果我使用委托,我可以使用以下代码检查我的委托和委托方法,如果实现:

if ([self.delegate respondsToSelector:@selector(myDelegateMethod:)]) {
    [self.delegate tabBarClickWriteButton:self];
}

那么,如果在iOS中实现了,我可以查看块吗?

2 个答案:

答案 0 :(得分:1)

使用'强'引用使您的块成为属性。如果需要,可以使用自我弱的参考。

在调用块之前只需检查

if(block){

块(数据);

}

答案 1 :(得分:0)

您需要检查阻止如下

if (self.yourblock != nil) { 
    self.yourblock(self.titleLabel.text);
 }