小编典典

在Swift中使用Objective-C类别的正确方法是什么?

swift

我试图将某些类别方法导入我的Swift文件,但没有任何运气。

ios-Bridging-Header.h:

#import "UIColor+Hex.h"

UIColor + Hex.h

#import <UIKit/UIKit.h>

@interface UIColor (Hex)

+ (UIColor *)colorWithHex:(NSUInteger)hexInt;
+ (UIColor *)colorWithHexString:(NSString *)hexString;

@end

我希望自动完成功能能够揭示UIColor(hexInt: NSUInteger)UIColor(hexString: String)


阅读 275

收藏
2020-07-07

共1个答案

小编典典

实际上,您的类别将转换为Swift,如下所示:

extension UIColor {

    init(hex hexInt: Int) -> UIColor

    init(hexString: String) -> UIColor

}

因此,您应该使用:

let color = UIColor(hex: 0xffffff) // instead of hexInt:

let color = UIColor(hexString: "ffffff")

不过,自动完成功能在Beta版软件中可能仍然存在问题。

2020-07-07