我在许多项目中都有UIScrollViewSlidingPagesSSPullToRefresh库,但是突然之间,在这个新的iOS 8项目中出现了奇怪的错误。

#import <Foundation/Foundation.h>

@interface TTSlidingPageTitle : NSObject

-(id)initWithHeaderText:(NSString*)headerText;
-(id)initWithHeaderImage:(UIImage*)headerImage;

//The title text to go in the nav bar
@property(strong, nonatomic) NSString *headerText;

//An image to use in the nav bar (if you set this, the title text will not be used)
@property(strong, nonatomic) UIImage *headerImage;

@end

该行出现了“期望的类型” 错误:
 -(id)initWithHeaderImage:(UIImage*)headerImage;

并且此行得到了“未知类型名称UIImage” 错误:
@property(strong, nonatomic) UIImage *headerImage;

最佳答案

如果检查UIImage的docs,则会看到它位于UIKit中,而不是Foundation中。现在所有文档都针对Swift,这有点烦人,但是您会看到文档中的import语句指定为

@import UIKit;

您需要在文件顶部添加该文件(也不需要Foundation导入)。

有时项目会将此导入语句包含在预编译的头文件(pch)中。应该在Build Settings-> Prefix Header中引用它,否则将不会在编译中使用它。

08-27 19:11