在Swift中无法直接继承Objective-C的类(.m文件)。需要先将Objective-C的类转换为Swift的类(.swift文件),然后才能在Swift中继承该类。

转换Objective-C类为Swift类的步骤:

  1. 创建一个新的Swift文件。

  2. 在Swift文件中引入需要转换的Objective-C类的头文件。

  3. 使用Xcode自带的“Create Bridging Header”功能,在项目中创建一个名为“[项目名]-Bridging-Header.h”的文件。

  4. 在该Bridging Header文件中导入需要转换的Objective-C类的头文件。

  5. 在Swift文件中继承Objective-C类。

  6. 在Swift文件中重写需要重写的方法或添加Swift特有的方法。

示例代码:

Objective-C类的头文件:

@interface MyObjCClass : NSObject

- (void)doSomething;

@end

Swift文件:

import UIKit

class MySwiftClass: MyObjCClass {

    override func doSomething() {
        super.doSomething()
        // Add additional functionality here.
    }

    func doSomethingElse() {
        // Add Swift-specific functionality here.
    }

}

注意:在Swift中继承Objective-C的类时,需要确保Objective-C类的访问级别(public、private、internal)与Swift类的访问级别相同。否则会出现编译错误

在swift中继承m的类

原文地址: https://www.cveoy.top/t/topic/hsf0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录