1

我正在开发一个代码在 Objective-C 和 Swift 3.2 中的项目,

我正在从需要扩展 MFMailViewControllerDelgate 的 Swift 文件发送邮件

但是当我构建项目时出现错误

在 Swift 头文件中找不到“MFMailComposeViewControllerDelegate”的协议声明

在下面的代码部分

@interface EmailManager (SWIFT_EXTENSION("targetname")) 
   <MFMailComposeViewControllerDelegate>
   - (void)mailComposeController:(MFMailComposeViewController * 
   _Nonnull)controller didFinishWithResult:(MFMailComposeResult)result 
   error:(NSError * _Nullable)error;
@end

为了解决错误,我编辑了 swift 头文件并手动添加<MessageUI/MessageUI.h> ,一切正常。但是当在项目中进行新的更改或添加新的 Swift 文件时,这个自动生成的文件会被重置并且我再次收到错误。

请提出一些永久的解决方案

仅供参考:在自动生成文件中有@import MessageUI 在构建设置中有MessageUI框架在构建设置定义模块设置为是忽略代码片段中的目标名称

4

0 回答 0