我有一个块的调用 - 具体来说,它是UIAlertView的一个块,它根据按下的按钮提供功能。我使用的是UIAlertView + Blocks,可在此处找到:https://github.com/ryanmaxwell/UIAlertView-Blocks
一切都很好看,直到我最近通过安装' pod安装刷新了Cocoapods。命令。尽管UIAlertView + Blocks的版本没有改变,但更新我的cocoapods包装工作区的简单行为导致了一个非常奇怪的错误,即不再为UIAlertView + Blocks调用任何完成块。
认为它可能是pod中的一个错误,我为UIAlertView完成块尝试了另外两个cocoapod。没有骰子 - 正在跳过UIAlertView的任何完成块。
有问题的方法:
[UIAlertView showWithTitle:@"Change Password"
message:@"Please enter your new password below."
style:UIAlertViewStyleSecureTextInput
cancelButtonTitle:@"Cancel"
otherButtonTitles:[NSArray arrayWithObjects:@"OK", nil]
tapBlock:^(UIAlertView *alertView, NSInteger buttonIndex) {
//THIS PART ISN'T BEING CALLED
NSLog(@"Change password, do some other stuff...");
//Do other things...
}];
其他类的所有其他块工作正常。它只是与UIAlertView相关的块已停止工作。
答案 0 :(得分:1)
两个建议/问题。
答案 1 :(得分:0)
Kaupo提供了关键信息 - 我检查了我的git diff并发现我的其他一个cocoapods也正在更新,两者一起导致UIAlertView委托系统发生冲突 - &#39这就是为什么这个街区没有被召唤的原因。 /捂脸
最后,我通过为我的UIAlertViews使用不同的cocoapod解决了这个问题 - UIBAlertView