小编Mig*_*iro的帖子

在Objective-c上使用静态Swift方法时,"没有已知的选择器类方法"

我已经获得了Objective C代码,我需要为它添加额外的功能.我对Objective C非常不熟悉所以尽我所能在Swift上做对我来说非常理想.

这是我的Swift文件/类:

import Foundation
import UIKit

@objc class ImageBarSize: NSObject{

  static func changeContadorImageSize(img:UIImage, newSize:CGSize) -> UIImage{
    UIGraphicsBeginImageContextWithOptions(newSize, true, 0.0)
    let x:CGFloat = 0
    let y:CGFloat = 0
    img.draw(in: CGRect(x:x,y:y,width:newSize.width,height:newSize.height))
    let newImage:UIImage = UIGraphicsGetImageFromCurrentImageContext()!
    UIGraphicsEndImageContext()
    return newImage;
  }
}
Run Code Online (Sandbox Code Playgroud)

这是我的Objective C .m文件中的代码:

 imgBarCounter = [UIImage imageNamed:@"bar-counter-pd.png"]; 

 self.image = [ImageBarSize changeContadorImageSize:imgBarCounter newSize:CGSizeMake(300, 300)];
Run Code Online (Sandbox Code Playgroud)

我得到错误"选择器没有已知的类方法'changeContadorImageSize:newSize:'".

我完成了整个桥接过程

 #import <WHS_Live_2-Swift.h>
Run Code Online (Sandbox Code Playgroud)

在文件的开头,这一切似乎都运行正常.我已经在SO上查看了类似的错误线程,但无济于事.

objective-c language-interoperability ios swift

12
推荐指数
1
解决办法
6015
查看次数