私はSwift2にプロジェクトをアップグレードしています。 多くのエラーを解決した後、プロジェクトをビルドするときにエラーが発生しました。"Objective-C Generated Interface Header Name"のエラー
エラーがObjective-V Generated Interface Header
に位置し、Xcodeのは、ここでは、このエラーをType argument 'CGColorRef' (aka 'struct CGColor *') is neither an Objective-C object nor a block type
印刷さ
エラーが**の間のライン上に印刷され、コードである:
SWIFT_CLASS("_TtC519RadialGradientLayer")
@interface RadialGradientLayer : CALayer
**@property (nonatomic, copy) NSArray<CGColorRef> * __nullable colors;**
@property (nonatomic, copy) NSArray<NSNumber *> * __nullable locations;
@property (nonatomic) CGPoint center;
@property (nonatomic) CGFloat startRadius;
@property (nonatomic) CGFloat endRadius;
- (nullable instancetype)initWithCoder:(NSCoder * __nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithLayer:(id __nonnull)layer OBJC_DESIGNATED_INITIALIZER;
- (void)drawInContext:(CGContextRef __nonnull)ctx;
+ (BOOL)needsDisplayForKey:(NSString * __nonnull)key;
@end
私はそれがこのクラスへのリンクだと思います。
class RadialGradientLayer: CALayer {
var colors: [CGColor]? {
didSet {
self.setNeedsDisplay()
}
}
var locations: [CGFloat]? {
didSet {
self.setNeedsDisplay()
}
}
...
}
どこでも答えは見つからなかったので、私はここにいます。
'@nonobjc'を回避しますか?オブジェクトではありませんが、これは関連していると思います:https://forums.developer.apple.com/message/47692#47692。 – orccrusher99