swift调用oc方法崩溃?

无敌鲨鱼炮
  • 448

错误信息如下:
图片描述

图片描述

LMAlertView是一个OC写的第三方弹窗,项目中一直在用,没什么问题。如今OC和swift混编,我在swift文件中也需要用到这个弹窗。

LMAlertView的init方法是我敲代码的时候系统自动补全的,但是很奇怪,它并没有真正的补全
LMAlertView的源代码是这样的:

- (id)initWithTitle:(NSString *)title message:(NSString *)message delegate:(id)delegate cancelButtonTitle:(NSString *)cancelButtonTitle otherButtonTitles:(NSString *)otherButtonTitles, ... NS_REQUIRES_NIL_TERMINATION;

系统自动补全的时候少了otherButtonTitles 这个参数?。编译不报错,运行到那段代码的时候直接崩了,根据提示应该是LMAlertView没有那个方法,源码中确实也没有。

那么Xcode为什么要给我补全一个不纯在的方法呢?

我如果手动写全那个方法,编译不通过。

不知道有没有同学遇到类似情况,希望可以分享下。

回复
阅读 3.3k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏