找不到'MFMailComposeViewControllerDelegate'的协议声明;你是说'UIPageViewControllerDelegate'吗?

时间:2014-01-02 16:05:37

标签: ios xcode

此代码:

#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
#import <MessageUI/MessageUI.h>
#import "MessageComposerViewController.h"
#import <MessageUI/MFMailComposeViewController.h>

@interface MapViewController : UIViewController <MFMailComposeViewControllerDelegate> // Add the delegate

- (IBAction)showEmail:(id)sender;

{
    IBOutlet MKMapView *mapView;
}

@property (nonatomic, retain) MKMapView *mapView;

@end

此问题或错误:

  • 找不到'MFMailComposeViewControllerDelegate'的协议声明;你是说'UIPageViewControllerDelegate'吗? 对于这个lign:#import“MessageComposerViewController.h”

  • 预期标识符或'(' 对于这个lign:@interface MapViewController:UIViewController //添加委托 这个lign:{

谢谢你提前。 :)

3 个答案:

答案 0 :(得分:4)

试试这个,

    #import <UIKit/UIKit.h>
    #import <MapKit/MapKit.h>
    #import <MessageUI/MessageUI.h>
    #import "MessageComposerViewController.h"
    #import <MessageUI/MFMailComposeViewController.h>

    @interface MapViewController : UIViewController <MFMailComposeViewControllerDelegate,UINavigationControllerDelegate> {
      IBOutlet MKMapView *mapView;
   }
    - (IBAction)showEmail:(id)sender;
    @property (nonatomic, retain) MKMapView *mapView; 
    @end

答案 1 :(得分:1)

如果您执行上述操作并仍然在Xcode中看到警告,请尝试构建或构建&amp;运行你的应用程序有时这些警告会在您解决问题后消失,并在编译周期中清除。

答案 2 :(得分:0)

我今天遇到了同样的问题,为ios8编写应用程序。 我做的第一件事是重新添加框架,但它没有帮助。问题是我忽略了libAWDProtobufFacetimeiMessage - 一个协议缓冲文件。我没有专业的猜测为什么,但是当我添加缓冲区和框架本身时,错误消息消失了。我发布了截屏here。希望我的回答可以帮助将来看这里的任何人。